Commit Graph

108 Commits

Author SHA1 Message Date
qctecmdr
ca2fbfd531 Merge "disp: msm: dsi: commit DSI PHY timings after update" 2019-10-20 01:37:41 -07:00
qctecmdr
0f4eb17208 Merge "drm/msm/dsi: fix panel physical dimensions updated to connector" 2019-10-19 01:51:16 -07:00
Satya Rama Aditya Pinapala
f372981434 disp: msm: dsi: commit DSI PHY timings after update
DSI PHY timings must be committed every time the values
are updated after a dynamic mode switch.

Change-Id: Id605c76dfe75ec41ceb89000f24baccda189e82f
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-10-18 14:00:05 -07:00
Vara Reddy
7e86c13d25 drm/msm/dsi: allocate current mode memory early for DMS
There can be a scenario where dynamic mode set can come
for first commit also, allocate memory for current mode
before checking for DMS.

Change-Id: Ief856a372629112380f199bc336160b3fa278eef
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-10-18 13:49:45 -07:00
Vara Reddy
45ad6294fe drm/msm/dsi: fix panel physical dimensions updated to connector
Change overrides the panel physical dimensions with correct
value upto a precision of millimeter, which was getting
truncated to centimeter as drm structures maintain it in
centimeters.

Change-Id: I035357596ed42154b657b791846aee6f940f2e53
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-10-18 13:49:41 -07:00
qctecmdr
4fbdc64598 Merge "drm/msm/dsi: add flag for mode switch with fps" 2019-10-16 07:19:40 -07:00
qctecmdr
0a9855fc8f Merge "drm/msm/dsi-staging: use usleep_range instead of msleep in dsi enable" 2019-10-15 11:35:53 -07:00
Vara Reddy
6a574a6e3c drm/msm/dsi: add flag for mode switch with fps
Change adds flag to identify dynamic mode switch with same
resolution and different fps. Block sending PPS command
if we hit this scenario, this optimizes mode switch time.

Change-Id: If5c86084cde641952fe294b512e937cfd1bb5479
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-10-14 11:13:41 -07:00
Vara Reddy
b712eb76c9 drm/msm/dsi-staging: update mdp transfer time preference
With this change, mdp transfer time updated to userspace
will be the preferred dtsi entry, when both dsi clock
and mdp transfer time nodes are set.

Change-Id: I37cd55e3d6f3f0f78f4ca4bddf921f6cf743c1b9
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-10-01 11:31:30 -07:00
qctecmdr
f96023f963 Merge "disp: msm: dsi: Set OLED reugalor mode when exit LP1" 2019-09-26 06:35:28 -07:00
qctecmdr
8dab90d54d Merge "disp: msm: config AB/IBB power when AOD mode enter/exit" 2019-09-26 04:35:18 -07:00
qctecmdr
ccffe7be5f Merge "disp: msm: Set the dsi panel type" 2019-09-26 02:22:44 -07:00
qctecmdr
19e23cd72e Merge "disp: msm: only set nolp command when panel in LP1/LP2 mode" 2019-09-26 00:23:18 -07:00
Samantha Tran
70a1445d18 disp: msm: dsi: add null check for panel and proper ctrl iteration
This change moves the panel null check to the beginning of the function
so panel can be used throughout the function. This change also replaces
looping through display ctrls with proper display_for_each_ctrl.

Change-Id: I0014ee7ad6d8514734f9233a1abb314e60d29b5f
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2019-09-24 12:56:50 -07:00
Vara Reddy
4534e1912d drm/msm/dsi-staging: use usleep_range instead of msleep in dsi enable
Use usleep_range api instead of msleep in dsi enable path to
improve accuracy, which improves bootup time.

Change-Id: I5d00d666bfacddea58b824267eb0eb39b5b2641c
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-09-24 11:51:57 -07:00
Yuan Zhao
3b554d4fba disp: msm: dsi: Set OLED reugalor mode when exit LP1
When panel exits LP1, need to set OLED power mode.

Change-Id: I045777a0dce941e45b71bc74c7b2908b24df3396
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-09-24 01:26:36 -07:00
Yuan Zhao
2da9889075 disp: msm: config AB/IBB power when AOD mode enter/exit
ELVDD/ELVSS has a dip during AMODE panel AOD exit hand-off.
According to PMIC team's suggestion, need to config the AB/IBB power
to REGULATOR_MODE_IDLE/REGULATOR_MODE_NORMAL to fix dips.

Change-Id: Ia5cbd4d698de262e02a660f670865c03dda1e04a
Signed-off-by: Wenjun Zhang <wjzhan@codeaurora.org>
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-09-24 01:26:31 -07:00
Yuan Zhao
bb2f60b35c disp: msm: Set the dsi panel type
Parse the DTS panel type settings. Consider the default
panel physical type as LCD. We need to set OLED in DTS if
the panel is an OLED type.

Change-Id: Ib53651ab3861e75bf061f38d60a2f6135c1f537d
Signed-off-by: Wenjun Zhang <wjzhan@codeaurora.org>
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-09-24 01:26:23 -07:00
Yuan Zhao
f2873cd69f disp: msm: only set nolp command when panel in LP1/LP2 mode
DSI driver sends nolp commands when DSI connector power
modes is set SDE_MODE_DPMS_ON or SDE_MODE_DPMS_OFF. This
is invalid panel configuration. It should only send nolp
commmand to panel when it is in LP1/LP2 mode.

Change-Id: Ie94eaef6899d292fd20f42c1b7ef2c7a99178d13
Signed-off-by: Wenjun Zhang <wjzhan@codeaurora.org>
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-09-24 01:23:41 -07:00
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