for some scene we need to alloc continue buffer from dma buffer,
but vop iommu is still enable, so we add iommu map for dma buffer.
Change-Id: I4749eac53609f865d0d4230364b1cbaf39ee095a
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
the previous practice will set the reg of i2s_select to select spdif when
audio shutdown and playing spdif at this point will cause the audio to
come out of hdmi as well
Change-Id: I8f9f53ea71ce83b33e32b575bacd2249da3b7d8f
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
support camera gc2355 default for rk3399_tve1030g board
Change-Id: Ib90711a7ade38228ad5d3e6568777b39cfd932a2
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
The duplicated arm-pmu node is added by commit
d88bd40057
Fixes: d88bd40057 ("arm64: dts: rockchip: rk3368 add more ip nodes to core dts")
Change-Id: I6583345b5903ae4a3f7383b7f43399ed0cbafc0d
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
hdr_static_metadata is no longer used for HDR configuration,
used only as store the hdr info after edid parsing.
Change-Id: Ib2c5e3e739267433176181aa9a0611a50a847125
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
We previously registered two extcon notifier in dwc3/dwc3_rockchip.c in
kernel-4.4, EXTCON_USB and EXTCON_USB_HOST respectively, so we only need to
send EXTCON_USB notifications when acting as a peripheral. In the new
kernel 4.19 code, only EXTCON_USB_HOST is registered in dwc3/drd.c. In
order to be notified to dwc3 controller as a peripheral, we need to send a
EXTCON_USB_HOST notification at the same time.
Change-Id: I7507b90c94d35877ce704222a49e8e673a49a162
Signed-off-by: Jianing Ren <jianing.ren@rock-chips.com>
In order to switch the drd mode of the dwc3 controller by software, we
add these registers in the driver.
Change-Id: Ice5009631f491915ca78b5310cc9c623269bff41
Signed-off-by: Jianing Ren <jianing.ren@rock-chips.com>
priority order:
1. MPP_CMD_SET_REG_ADDR_OFFSET define the trans table each task.
2. MPP_CMD_INIT_TRANS_TABLE define once when open session.
3. use default trans table define in each device.
Change-Id: I13409fb67d58dfa53295aabe7952d044dc1637d4
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
In the original probe process, firstly check if it is a dwc3 core, then
get the clock and deassert the reset. This sequence will cause probe
breaking when the relevant register values is zero when the reset is
asserted. To avoid this problem, I adjust the order of probe, firstly
deassert the reset, and then check whether it is a dwc3 core.
Change-Id: Ib5783e450b45dad7ded82fc9c6cd0492bc788d11
Signed-off-by: Jianing Ren <jianing.ren@rock-chips.com>
This patch enables the integrated PHY for rk3229 evb board
by default.
To use the external 1000M PHY on evb board, need to make
some switch of evb board to be on.
Change-Id: I31f2ca6293eeac8a70aca20160f325abdf7509b6
Signed-off-by: Xiao Ya peng <yp.xiao@rock-chips.com>
Commit b7526773a3 ("media: i2c: add enum_frame_interval
function for iq tool 2.2 and hal3") add enum_frame_interval
function, but forget to use in struct v4l2_subdev_pad_ops, fix it.
Fixes: b7526773a3 ("media: i2c: add enum_frame_interval function for iq tool 2.2 and hal3")
Change-Id: I8383a7a409ca5f2fa3a8f8d98c38b94062c2bb36
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
1. Put the same reset clk in same group to make sure these clk can only
use devm_reset_control_get get once. Otherwise, devm_reset_control_get
will be fail.
2. Add rw_semaphore to avoid shared clk reset when other running.
Change-Id: Ifd0f1137ac82fdfef9e99bc3501c8dc8c1e1b7dd
Signed-off-by: Grey Li <grey.li@rock-chips.com>
Save memory and cpu usage for Android.
Base on android-recommended.config.
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Id4ecfafab836df8a7a8ba382fa5f32e516176368
- the original config is too strict to satisfy general usage.
- adds CONFIG_SND_SOC_ROCKCHIP_PREALLOC_BUFFER_SIZE for flexible
buffer size.
Change-Id: I1f060269cb1887c17a2cd83701f0263993be8ec7
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
when hdmi plug out or switch hdmi resolution, vop output timing
maybe still at 4k resolution, but dclk will be set to 27M immediately,
this will lead to one frame time change from 16.6ms to
(594 / 27) * 16.6 = 365ms.
drm will dump the following log, this looks uncomfortable, so we use
rockchip_drm_atomic_helper_wait_for_vblanks to instead of
drm_atomic_helper_wait_for_vblanks to cancel the dump log when mode
update, and retain the debug warning log for every frame commit.
[ 31.415329] ------------[ cut here ]------------
[ 31.415383] [CRTC:56:crtc-0] vblank wait timed out:1201:1201
[ 31.415498] WARNING: CPU: 2 PID: 366 at drivers/gpu/drm/drm_atomic_helper.c:1433 drm_atomic_helper_wait_for_vblanks.part.21+0x2c0/0x2d4
[ 31.415529] Modules linked in:
[ 31.415573] CPU: 2 PID: 366 Comm: composer@2.1-se Tainted: G W 4.19.80 #1337
[ 31.415601] Hardware name: Rockchip RK3328 EVB avb (DT)
[ 31.415633] pstate: 60400005 (nZCv daif +PAN -UAO)
[ 31.415661] pc : drm_atomic_helper_wait_for_vblanks.part.21+0x2c0/0x2d4
[ 31.415696] lr : drm_atomic_helper_wait_for_vblanks.part.21+0x2c0/0x2d4
....
[ 31.423867] Call trace:
[ 31.423904] drm_atomic_helper_wait_for_vblanks.part.21+0x2c0/0x2d4
[ 31.423939] drm_atomic_helper_wait_for_vblanks+0x1c/0x20
[ 31.423969] rockchip_atomic_commit_complete+0xb0/0x130
[ 31.423997] rockchip_drm_atomic_commit+0x1d4/0x230
[ 31.424032] drm_atomic_commit+0x50/0x68
[ 31.424067] drm_mode_atomic_ioctl+0xbe0/0xcb0
[ 31.424100] drm_ioctl_kernel+0xa0/0xe4
[ 31.424133] drm_ioctl+0x318/0x4a4
[ 31.424168] do_vfs_ioctl+0xbc/0xdb4
[ 31.424201] ksys_ioctl+0x78/0xa8
[ 31.424225] __arm64_sys_ioctl+0x1c/0x28
[ 31.424262] el0_svc_common.constprop.1+0xb4/0x168
[ 31.424288] el0_svc_handler+0x20/0x78
[ 31.424320] el0_svc+0x8/0x340
[ 31.424349] ---[ end trace af4d2af5b5fb7553 ]---
Change-Id: I5988882380fa91b7527999ac2cd5ae13cfc88a8b
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
LZ4 uncompress is faster than LZO. And same as arm64.
Save about 177 ms boot time on rk3126-bnd-d708-avb.
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I59b008f8b6e36bd790310cace653c4e54800e438
The regulator may not ready when probe video driver, then the video
driver will probe failed. We need probe video driver again if
get_regulator() return -EPROBE_DEFER, so return -EPROBE_DEFER to
the probe.
Change-Id: Ibd60f0397af7e5d8ef79d05b44d40fd66722d53b
Signed-off-by: Liang Chen <cl@rock-chips.com>
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
Sometimes, the random pool initialization is too slow in reocvery mode,
use hw_random to speed up it.
Change-Id: Iabc37548ef03e60dca9707126750629efafbfe6d
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>