提交線圖

1929 次程式碼提交

作者 SHA1 備註 日期
Nilaan Gunabalachandran
f9ff8af5b6 disp: msm: sde: fix reg dump from accessing unavailable registers
On Waipio target, periph top0 block has been removed from mdp top
register block. This creates a hole in the accessible register space
and can lead to NOC errors. In addition, accessing register offset
for invalid dedicated concurrent write back can lead to NOC errors.

This change adds support for indicating if the periph block has been
removed and splitting the mdp top register block into two for reg dump.
In addition, it only registers valid dcwb to be reg dumped by
adding a dcwb count.

Change-Id: I23931cdf5ce4d858a3837f3946b54d9231e0db27
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
2021-02-25 18:04:38 -05:00
qctecmdr
fed809d6ff Merge "disp: msm: sde: add support for CWB ROI cropping feature" 2021-02-24 17:28:06 -08:00
qctecmdr
7cf53a290d Merge "disp: msm: dsi: round up the byte clock to even number" 2021-02-24 17:04:03 -08:00
Samantha Tran
1e4664fcec disp: msm: sde: add support for CWB ROI cropping feature
This change exposes capabilities for CWB ROI to userspace
as well as implements the cropping feature which is now supported.

Change-Id: Idf76727175bf7c183367be715eaa45f3a432640c
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2021-02-23 17:17:29 -08:00
Gopikrishnaiah Anandan
e7c7283510 disp: msm: sde: add support for noise layer
DPU has added support for noise injection into the layer stack. Change
adds support for noise layer programming and exposes the hardware block
to the user space modules.

Change-Id: Id176eea54fcdcd5d399457b14133a1ccde07299f
2021-02-23 15:56:36 -08:00
Gopikrishnaiah Anandan
0902623719 disp: msm: sde: add dtsi parsing support for noise layer
Noise layer feature is supported on certain version of dpu. Change adds
parsing support for the feature into the sde hw catalog.

Change-Id: I8037cab1d7bba1ea74c13c917ee5a36c50dc50cf
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2021-02-23 15:56:29 -08:00
Satya Rama Aditya Pinapala
57064ba1cc disp: msm: dsi: round up the byte clock to even number
Change rounds up the calculated byte clock rate to the nearest
even number.

Change-Id: Iea6d3121343f1b2cb6d0a06cd47a84b050d55ac1
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2021-02-23 14:38:18 -08:00
Satya Rama Aditya Pinapala
5c7dfa0712 disp: msm: dsi: ensure even rate for DSI byte clock in DPHY
For DPHY, DSI byte clock is used to derive the byte interface clock through
a DIV_2 divider. While setting the rate for byte interface clock, if the byte
clock rate is odd the recalculation of byte interface clock will fail. This
can further lead to recalculation of byte clock and result in unexpected
value for byte clock. The change ensures that for DPHY, the byte clock rate is
always even to avoid such issues.

Change-Id: I0a0371af75e5819ed1283b52b4681e70f55d66e0
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2021-02-23 11:39:47 -08:00
qctecmdr
17a3f3cbea Merge "disp: msm: dp: fix dsc resource bookkeeping for mst" 2021-02-23 07:25:38 -08:00
qctecmdr
052949d046 Merge "disp: msm: dp: optimize sim function handling in dp_debug" 2021-02-20 22:34:57 -08:00
qctecmdr
1393447cd5 Merge "disp: msm: sde: enable dedicated CWB feature on Waipio" 2021-02-20 13:06:33 -08:00
Chandan Uddaraju
b290a0b781 disp: msm: sde: enable dedicated CWB feature on Waipio
Set the boolean property to enable dedicated
CWb feature on Waipio hardware.

Change-Id: I033691fd948729e7b6cef72a2d00c3ca2faedcae
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2021-02-19 12:53:09 -08:00
Chandan Uddaraju
2c252d9f5c disp: msm: wb: Add support for IRQs in new Pingpong blocks
For dedicated CWB pingpong blocks, the overflow irq needs
to be mapped properly to existing IRQ handlers. Add the
needed changes in code.

Change-Id: Ibf398faac60acc027e4577504f9292ac2b72bae2
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2021-02-19 12:53:09 -08:00
Chandan Uddaraju
1b7fba16bd disp: msm: sde: update RM to support dedicated CWB
Add dummy layer mixer blocks to be used for dedicated
CWB.

Change-Id: Ie1fe4fa7502cf5cf4dba3f2c129257887a20b7ad
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2021-02-19 12:53:09 -08:00
Chandan Uddaraju
4fe3d97078 sde: wb: add changes to support Dedicated-CWB
Add new capture/tap point as CRTC property for
D-CWB feature. Update the hardware blocks and
corresponding APIs to configure D-CWB data path.
Add new hardware pingpong blocks that
are dedicated for CWB.

Change-Id: I22576df1768b50f9f47d8527f62913b01ff4d9a7
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2021-02-19 12:52:59 -08:00
qctecmdr
08caeadff5 Merge "drm: msm: set non-secure context bank as default address space" 2021-02-18 18:02:59 -08:00
qctecmdr
08b394669c Merge "display: get unifdef explicitly" 2021-02-17 15:29:07 -08:00
qctecmdr
3b347d347c Merge "disp: msm: sde: replace demura pipe index cap. with general pipe index" 2021-02-17 12:40:11 -08:00
Naseer Ahmed
0d40f1505f display: get unifdef explicitly
Change-Id: Iab81cd0ed9791e7426719fbc1b43d9ccafc89bb7
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2021-02-17 09:14:03 -08:00
qctecmdr
a49d0d9ce1 Merge "disp: msm: sde: update regdma offsets through target dtsi property" 2021-02-16 23:35:31 -08:00
qctecmdr
eabc0a4304 Merge "disp: msm: sde: add support for WD timer on INTF" 2021-02-16 14:40:02 -08:00
Samantha Tran
e778d2688e disp: msm: sde: add support for WD timer on INTF
Watchdog timer is moving from TOP to INTF. This change adds
support for movement and ensures backwards compatibility.

Vsync select only needs to specify whether or not to use
Timer 0 associated with the interface. It does not need to
select between Timer 0-4.

Signed-off-by: Samantha Tran <samtran@codeaurora.org>
Change-Id: I9d89a8cb1ea607e9fc0bdbffa0a6a9acceff7f13
2021-02-12 13:49:31 -08:00
qctecmdr
7de8f1e2ac Merge "disp: msm: dsi: set source to xo while turning off PLL" 2021-02-12 11:50:19 -08:00
Xiaowen Wu
67ce55687b disp: msm: dp: optimize sim function handling in dp_debug
Remove edid/dpcd simulation function from dp_debug and calls to
sim bridge instead to simplify dp_debug module. Also add mst edid
support and mst hpd simulation from aux level.

Move selected mode from dp_debug module to dp_panel module to
simplify mst handling and decouple dp_debug from main dp driver.

Remove custom edid/dpcd mode from dp_panel and dp_aux module.
Remove mst connector list handling from dp_display module.

Change-Id: Ife1d2deb0e353f0a9695b7b90e5bf3459e1c81f7
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-12 14:18:50 -05:00
Nilaan Gunabalachandran
d5cff3e118 disp: msm: sde: update regdma offsets through target dtsi property
REG DMA programming occurs with respect to the sub-block top,
but all registers catalogued are with respect to sspp top.
This change adds support for handling the updated
sspp sub-block top and retains a default value for backward
compatibility.

Change-Id: I5a6364b17e817e38cd5afbcc67ed9df98c024008
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
2021-02-11 13:25:54 -08:00
Christopher Braga
9a5a42c453 msm: drm: sde: Add support for FP16 via AHB programming
Introduce support for the FP16 format and FP16 color processing
blocks. This includes support for FP16, FP16 UBWC, and inline
rotation on tiled FP16 pixel data.

Change-Id: I06a70cab5447140598682f687129d4f8662524b2
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
2021-02-11 12:31:22 -08:00
Nilaan Gunabalachandran
5eb49ef15d disp: msm: sde: add support for indexing DMA sub blocks
Kernel cannot guarantee the order in which DMA sub blocks (DGM blocks)
device tree entries are parsed. This could lead to misinterpreting
register offsets. This change adds support for reading the index
of the dgm node to correctly correspond with hardware.

Change-Id: If7ae7afc858089d95f81aea071dc32ddab334555
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
2021-02-11 15:30:27 -05:00
Abhijit Kulkarni
11bb31225c drm: msm: set non-secure context bank as default address space
This change defaults each msm_obj buffer to non secure context
bank. This allows the cache maintenance operations to be performed
correctly on the msm_obj if it is used for GEM buffers.
For dma-buf heap buffers plane would assign the correct aspace
based on fb translation mode property.

Change-Id: Id07f844f0fe55bbe6b4d0748019a13455b510fb8
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
2021-02-11 10:31:27 -08:00
Xiaowen Wu
24d245556e disp: msm: dp: add up_req support for mst_sim_helper
Add up_req support for mst_sim_helper when port state is updated.

Add reset support when hotplug becomes low.

Change-Id: I72341bd845f9061a59af6740b9862ebbc4c8979e
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
Xiaowen Wu
fdb86d6f62 disp: msm: dp: add new APIs to dp_mst_sim
Add below new APIs to dp_mst_sim to allow more controls from other
dp modules:

dp_sim_create_bridge: create dp_sim bridge simulator.
dp_sim_destroy_bridge: destroy dp_sim bridge simulator.
dp_sim_set_sim_mode: enable/disable simulation mode.
dp_sim_set_mst_mode: update dp-mst simulation mode.
dp_sim_update_port_status: update dp-mst port status in simulator.
dp_sim_update_port_edid: update dp-sst/mst port edid in simulator.
dp_sim_write_dpcd_reg: update dpcd register in simulator.
dp_sim_read_dpcd_reg: read dpcd register from simulator.

With the new functions dp_debug can move its internal debug function
to dp aux simulator, and dp_display can switch between simulation
mode and physical mode dynamically.

Change-Id: I26296b45a38dac422b8a098b50dca287909c8000
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
Xiaowen Wu
467443d7e3 disp: msm: dp: use dp_msm_sim for dp-mst simulation
Revert changes in dp mst topology manager and use dp_msm_sim bridge
at aux layer to implement dp-mst simulation.

Change-Id: I863649f901ac918f65c9078e6a2f1b6931d19e3a
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
Xiaowen Wu
52edf46bbd disp: msm: dp: add dpcd/edid support to dp aux simulator
Add dpcd/edid support to dp aux simulator to enable below features
as options:

  skip edid read
  skip link training
  skip dpcd read
  skip dpcd write
  skip hot plug
  skip sideband message

Also added debugfs support to update dpcd/edid and enable/disable
above features.

Change-Id: Ifa9153f2f00442f3cd5ee3db63fa93384ebc638f
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
Xiaowen Wu
5908171576 disp: msm: dp: add dp-mst sideband simulator
Add sideband simulator aux bridge to re-direct sideband message
from aux channel to internal emulation software stack. When this
bridge is connected to DP device, simulator will read ports configuration
from device tree and fake all sideband messages.

Change-Id: Ib8af2e0f4ba9b0d02413d40b796e5006b376ada8
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
Xiaowen Wu
c8a050c722 disp: msm: dp: add dp-mst protocol simulator helper
Add dp-mst sideband message protocol simulator to simulate
downstream reply. This is useful for special bridge that
doesn't support sideband message.

Change-Id: I7670abd3505affb9db3232747b86681cea0b4310
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
Xiaowen Wu
bdf97a004b disp: msm: dp: add dp aux bridge framework support
Create the framework to support external dp aux bridge device which
can handle DPCD/I2C/HPD from external.

Change-Id: Iabd0998efc8bf7134d186b1751d219c00217385c
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Karim Henain <khenain@codeaurora.org>
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
Sudarsan Ramesh
b1120f3470 disp: enable dp compilation on waipio
Enable DP and DP_MST compilation flags for Waipio.

Change-Id: I5b821346c19132a09d3a1100946e8ddb9e8728ac
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-02-10 22:34:33 -05:00
qctecmdr
359caa1be3 Merge "disp: msm: sde: add multirect error status for ubwc and meta" 2021-02-10 18:52:04 -08:00
Sandeep Gangadharaiah
ed103ed1ef disp: msm: dp: fix dsc resource bookkeeping for mst
DP driver maintains the number of allocated DSCs per stream for managing
the availability of DSC blocks for each stream. In the current driver,
if there are errors in the disable path, it is possible for the refcount
to go negative thereby affecting the availability of DSC blocks in
subsequent enables.

This change fixes the refcount logic by making sure the DSC count in the
context correctly reflects the usage.

Change-Id: Id595ec87c186ddb3ed300e1390384f367ef79148
Signed-off-by: Sandeep Gangadharaiah <sandgang@codeaurora.org>
2021-02-10 09:54:54 -05:00
Samantha Tran
73373271a7 disp: msm: sde: add multirect error status for ubwc and meta
This change adds support for error checking ubwc and meta error status
based off whether REC0 or RECT1 is used.

Change-Id: I7c39755da99a9d6c0d02b4ef16fa93b8ec7458a9
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2021-02-09 22:12:38 -08:00
qctecmdr
77b66f2f84 Merge "disp: msm: dp: add support to request dp link clk through mmrm" 2021-02-09 12:02:56 -08:00
Christina Oliveira
6092206a12 disp: msm: dp: add support to request dp link clk through mmrm
This change adds the support to request the dp link clk rate
through the mmrm driver. In the case the system can not
support the rate, user space is notified of the failure and
dp is diconnected.

Change-Id: I4a074054ce42425ca940d4aec505723724736b44
Signed-off-by: Christina Oliveira <coliveir@codeaurora.org>
2021-02-08 12:55:12 -08:00
Shashank Babu Chinta Venkata
23734fc295 disp: msm: dsi: reorder resource validation in probe
Reorder resource validation to report probe deferral
appropriately.

Change-Id: I63aab1b3282bda24dba2b84906564de290345fdd
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
2021-02-04 10:22:17 -08:00
qctecmdr
6ba5291f77 Merge "disp: msm: sde: Avoid kcallocs in atomic commit path" 2021-02-02 16:15:40 -08:00
Satya Rama Aditya Pinapala
3ff78e8f7d disp: msm: dsi: set source to xo while turning off PLL
HW recommendation is to park the DSI byte clock and pixel clock at XO
before turning them off. The change parses XO from the DT and sets the
clock source as XO while turning off the PLL.

Change-Id: I788951d6341149300e80e8db4a5a3fd2c4eb3e03
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2021-02-01 16:03:20 -08:00
qctecmdr
457b3d3397 Merge "disp: msm: dp: fix modeset locking in dp_mst_connector_detect" 2021-01-30 22:17:05 -08:00
Satya Rama Aditya Pinapala
6fe6395a75 disp: msm: sde: use backlight_device_register to register for backlight device
Reverting the backlight register call, as devm_backlight_device_register is not
available in the abi whitelist.

Change-Id: Ieb200bd8fb9393397fd3f0e013e3f7573eda8a38
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2021-01-29 11:56:51 -08:00
Sudarsan Ramesh
d2f89901b1 disp: msm: dp: fix modeset locking in dp_mst_connector_detect
The modeset lock acquired in dp_mst_connector_detect is not
being released after the detection is completed, which
causes subsequent deadlock.

Added a call to drm_modeset_drop_locks when coming out of
dp_mst_connector_detect.

Change-Id: Ibce79934d0ac23fed4985291c5c6078cb982e812
Signed-off-by: Sudarsan Ramesh <sudarame@codeaurora.org>
2021-01-29 11:36:10 -05:00
qctecmdr
6e1746d1f5 Merge "disp: msm: sde: clean up ctl setup blend stages" 2021-01-28 23:10:42 -08:00
qctecmdr
169fa37d1b Merge "disp: msm: sde: move IB bw vote from DISP RSC to APPS RSC" 2021-01-28 13:31:38 -08:00
qctecmdr
b5ea199f36 Merge "disp: msm: sde: fix vrefresh condition check in TE config" 2021-01-28 13:14:20 -08:00