Do nothing when stream is invalid, especially for
HDMI-TX-DLP with multi-dais situation.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ieb056147875ca2707b85f8d9962a5593e66abb21
Do nothing when stream is invalid, especially for
HDMI-TX-DLP with multi-dais situation.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I5b7387779c6fc166196fff1ef9ab35907b268021
Support for HDMI-TX Audio Digital Loopback.
e.g.
&hdmi {
audio,digital-loopback;
};
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Id5b4490b8bd96559b49fb8225cf93feac7c3d5c2
Used for measure the time cost between dma guard and stream.
Change-Id: I626f6b892faa31fbf06e7b1100fdf0b0fa3347f7
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
TDM mode use all FIFOs, the max burst is 16 word of DMAC,
so we used the max FIFO to cover DDR dmc windows.
4 FIFOs controller:
TDL:
16 word: WL = ((32 * 4) - 16) / 4 = 28
RDL:
16 word: WL = 16 / 4 = 4
Change-Id: Idd88e0615d7fd4ec8c36c72af1c0b1b2d716b43e
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
If a mux device in DPTX driver, usbdp phy should not trigger
dp hpd. DPTX driver will call phy_set_mode to transfer this
info.
Change-Id: I1d13858a9115a688bd9560eb41a2f86c76e73316
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
The power domain for vo grf may not enable when phy power
on. To access vo grf in other callback function to ensure
the power domain enable before access vo grf.
Change-Id: Iba5f8e6b62670bc01084616506ce146fb22d8e3c
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
The vop buffer dump feature no longer needs to be explicitly enabled via
debugfs, removing the code associated with it.
Change-Id: I73581514fc69616c97047adb4967d488261cee86
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
usleep_range() will take too long on !CONFIG_HIGH_RES_TIMERS,
replace with schedule() and nice.
Change-Id: I2dc6e4620fe4c56f491f1700e7d6c1f54d1c36e9
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Init tdm slots on ALWAYS-ON situation to achieve the real
always-on clk, no need to do one call on sound card.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I75840f9072c66a8a42fcbd65781ee0f0d1612c36
Initialize the dma guard and trigger run for always-on.
Use the max-16w to cover all 2^n cases, maybe better
per channels and fmt, at the moment, we use the simple
way.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ia4b9ba06a9cb1385f4cda7125f7f4680e6ebe6e0
Enable the xfer in the last card init stage to fix the config
failed on set_tdm_slot/set_fmt.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ie456b08d11eef5356036a431f5fd6117e0df3823
XFER must be placed after all registers sync done,
because a lots of registers depends on the XFER-Disabled.
Use regcache_sync_region to spilt the sync operation to address
the XFER in the final step.
And also fix for system suspend/resume by using the force one.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I4c5c48496940b2f20edf7a5fa65ad004a5ac9a55
Should be placed after pm_runtime_enable to do
rpm_resume at the moment. otherwise, it will make sense
at the next pm_runtime_get.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I759e5c8c0602b380c7f50d80d8f564316beea632
When i2c drivers probe failed, unregister_restart_handler() should be
done before leave probe().
Fixes: 497e7bd6e1 ("i2c: rk3x: Make sure the i2c transfer to be finished before system reboot")
Change-Id: I6587bd15b63315c173339c26dccf4388741d4286
Signed-off-by: David Wu <david.wu@rock-chips.com>
In normal case, dsc power domain will enable when crtc enable and
disabled when crtc disable. When enable dsc in uboot to show logo,
the dsc in kernel driver can't know the real power domain status,
which will trigger something wrong when disable/endale dsc power
domain.
To avoid this issue, we check the dsc power domain status when
vop_initial. the dsc power domain get in vop_initial function
is enabled only when dsc is enabled in uboot and enter into kernel
driver. It need to update dsc power domain status in this case.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I9641373c2c8facc17ff90d4141909bcc3ac6b13d
after close dsc pd, the following function will set vop enter standby
immediately, this will lead to dsc pd close failed, so we use
vop2_power_domain_put_sync() instead of vop2_power_domain_put().
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I9120e46ec2047e8358b28a3f153b54b4825a5e60
vop_dump_list* is no longer used and this patch removes this structure.
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I9f32dfd707a1b7633479f2f2f8fee12ad69a96b1
1. for rfbc/afbc format we need to dump all buffer at fb even userspace
set src buffer offset;
2. optimize dump buffer name, so we can get buffer info correctly from
file name, the following is an example of a dump file:
old file name: video1920_1080_NV12.bin
new file name:
Cluster0-win0_fb-1920x1088_stride-1920_offset-0x0_act-1920x1080_NV12_0.bin
Cluster0-win0_fb-3840x2160_stride-5760_offset-0x0_act-3840x2160_YU08_AFBC_1.bin
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I96c3af65fdbe37629d408bb09a8ee9aed78a7f7f
modifier_to_string() maybe used by vop/vop2/rockchip_drm_debugfs.c
and rename modifier_to_string() to rockchip_drm_modifier_to_string()
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I427d5f499d98315632bb91c56da37d9c014df75d
This patch deprecates the plane list record method used in the
previous plane buffer dump. There is no need to record these
information additionally now, as they are already accessible in DRM.
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: I965f42cc7372c4314aa8cd4de2a8a811b41badaf
This patch deprecates the plane list record method used in the
previous plane buffer dump. There is no need to record these
information additionally now, as they are already accessible in DRM.
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: Iaebf639bcc0759b0f1aa3c9a3888b964a8a6f35b
This patch deprecates the plane list record method used in the
previous plane buffer dump. There is no need to record these
information additionally now, as they are already accessible in DRM.
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: Id638a7309ab2ae3f7820d1779e922d008cba7e6d