The background of the cluster window can not be processed with csc.
Remove background property setting for them.
Change-Id: Idb4e47e327dd33536436df36eae6c5dbbfecafa7
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
In some case, a suitable bus format may be not found under
many constraint conditions. In this case, a default bus
format is used to avoid drm atomic commit process failed.
When userspace set a target bpc, it better to get the bus
format match the target bpc, if no such bus format found,
a auto select mode is choose and print a warning info.
When userspace set a target color format, it better to get
the bus format match the target color format, if no such
bus format found, a auto select mode is choose and print
a warning info.
Change-Id: Iff2482012d5a512f4c3a7a998c1e4fcb0f07f944
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
This patch add support for interleaved transfer which used
for interleaved audio or 2d video data transfer.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I56144d6f2316a78493ab51afea575d20b49df794
Assign maxburst from dai data, and then refine it per mapping.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I62382576fabd012fa69c7fb95e204b37ee9452e4
Many monitor supports two or more interfaces, such as HDMI and VGA.
They may also have two EDIDs: one for analog display and the other
for digital display. However, the analog one may not include the
information about bpc and color format. For example, the HP P24v
G4 Monitor has two EDIDs:
Analog:
00 ff ff ff ff ff ff 00 22 0e ab 36 01 01 01 01
13 20 01 03 68 35 1e 78 2a ce 65 a6 57 51 9f 27
0f 50 54 a1 08 00 d1 c0 a9 c0 81 c0 b3 00 95 00
81 00 81 80 01 01 02 3a 80 18 71 38 2d 40 58 2c
45 00 0f 28 21 00 00 1e 00 00 00 fd 00 32 3c 1e
50 11 00 0a 20 20 20 20 20 20 00 00 00 fc 00 48
50 20 50 32 34 76 20 47 34 0a 20 20 00 00 00 ff
00 31 43 52 32 31 39 30 4e 4d 43 0a 20 20 00 58
Digital:
00 ff ff ff ff ff ff 00 48 f4 52 12 01 01 01 01
02 1e 01 04 81 66 39 78 e6 c1 b0 a3 54 4c 99 26
0f 50 54 bd ef 80 d1 c0 81 c0 95 00 90 40 a9 c0
71 40 81 80 81 40 64 19 00 40 41 00 26 30 18 88
36 00 a0 5a 00 00 00 1e 0e 1f 00 80 51 00 1e 30
30 80 1b 01 a0 5a 00 00 00 1e 9e 20 00 90 51 20
1f 30 40 80 1c 01 a0 5a 00 00 00 1e 66 21 56 aa
51 00 1e 30 30 8f 1b 01 a0 5a 00 00 00 1e 00 cc
For the display route: eDP -> TR5521 -> VGA, the color format and bpc
information can not be parsed from the analog EDID. To adapt to this
case, we set the default bpc to 8 and the default color format to
DRM_COLOR_FORMAT_RGB444.
Change-Id: I376a373e543fee7698b7619a4d26f020bd3ad707
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
The filter function helps to filter out the interfering signals in
the input waveform, whose width is less than the filter window with
specific width in nansecond.
Change-Id: I0f0c19a8379bca723a6e1415fdca843ac5116510
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
The filter function helps to filter out the interfering signals in
the input waveform, whose width is less than the filter window with
specific width in nansecond.
For pwm v1, one controller can only enable filter for one channel
at the same time. It can be used for capture and IR input modes.
For pwm v4, each channel can independently enable filter function.
It can be applied in capture, biphasic counter and IR input modes.
Change-Id: Ibbbe5a37ab7e591adc103036c0cfcad49b71ea0d
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
If a new wb commit is too close to the timing of wb dma complete,
clearing the wb intr status will lose the wb dma complete status.
In this case, the software process is as follows:
vop2_wb_commit() -> vop2_wb_irqs_enable() -> Clear wb intr ->
vop3_sys_isr()/vop2_isr() -> vop2_read_and_clear_wb_irqs()
Since we had cleared the intr in vop2_wb_irqs_enable(), the value read
by vop2_read_and_clear_wb_irqs() is 0, and we have lost the interrupt
status.
Change-Id: I93bf7bd8b57336c7bb64353ce935a6991f93742b
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
When all win is disabled, writeback will not start.
Just skip these writeback request.
Change-Id: I80aa023b8a1e07ff37a23b4f3f76a6b88219b7aa
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
The drm_writeback_queue_job() function takes ownership of the passed
job and requires the caller to manually set the connector state
writeback_job pointer to NULL.
Therefore, there is no need to clear the writeback_job again.
Related commit:
97eb9eaeb9 ("drm: writeback: Cleanup job ownership handling when queuing job")
Change-Id: I74c659f1dd778b5fc72c5705dee9928757f1d17e
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Use writeback complete interrupt instead of software mark writeback
state and drm_writeback_signal_completion();
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I621ba684d64a89cdeb058e79745a75877029b37d
Eliminates unnecessary get/put operations for the "leakage" cell.
Signed-off-by: Ye Zhang <ye.zhang@rock-chips.com>
Change-Id: I3b1f1047725570e9bcb7d05aa015638ccc26c27b
possible_clones is used to indicate which other encoders can share
a CRTC with the current encoder. The default logic is that an encoder
can exclusively occupy one CRTC. However, in scenarios such as writeback
or connector mirroring, we can support multiple encoders sharing one
CRTC, hence this logic is introduced.
If less this commit, the writeback or connector mirror will commit
failed at the drm_atomic_check_valid_clones(), which is introduced by
the following commit:
commit ffb55ddf26 ("drm: Add valid clones check")
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I6b962a3eee80b6fbe80d0dbea1d765b219d70719
Supports compiling into ko, but for scenarios where the pre-loader
completes PCIe Endpoint initialization, if the ko format is used
to load the link, the link will be reset and the RC side needs to
remove/rescan the device again.
Change-Id: I455f44e3eb522b3c1953bddc4819e5245d65b67f
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
1.Sort by register offset;
2.Sort by register/register bitfiled.
Change-Id: I6fd6c394c23778230f36944212e824c6b88fe4f0
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
1.Usually BAR2 can be used to map endpoint registers;
2.Using the noncache attribute can effectively avoid problems
caused by improper use by users.
Change-Id: I99a11c00d59079c080f6bd53291d970c60311430
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>