Commit Graph

847685 Commits

Author SHA1 Message Date
Sandy Huang
f17edd2d3b drm/rockchip: gem: add dma buffer map to iommu
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>
2019-12-17 14:10:56 +08:00
Xinhuang Li
ec250395a3 drm: bridge: dw-hdmi: no need update i2s_select when hdmi audio shutdown
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>
2019-12-16 18:07:16 +08:00
Sugar Zhang
3e0cf8c18e drm: bridge/dw-hdmi: add support for hdmi bitstream audio
Change-Id: Ib1f6c5dba6451f3fbb029b5472dbfbf5694cff68
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2019-12-16 18:06:57 +08:00
Jianqun Xu
8580b08fb9 arm64: dts: rockchip: rk3368: fix to ACLK_ISP for isp node
Change-Id: If7c67469c6b1c00b7976a073a44764bea7d0ec7c
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2019-12-16 17:52:53 +08:00
Jianqun Xu
bdd7c60ffc clk: rockchip: rk3368: remove the gate bit CRU_CLOCKGATE_CON16[0]
Change-Id: I17d0a9d13a1814e9d0d0676c6b7730bcf78925dc
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2019-12-16 17:52:36 +08:00
Wu Liangqing
e62af425ec arm64: configs: rockchip_defconfig: add CONFIG_VIDEO_GC2355
support camera gc2355 default for rk3399_tve1030g board

Change-Id: Ib90711a7ade38228ad5d3e6568777b39cfd932a2
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2019-12-16 16:27:50 +08:00
Wu Liangqing
b8eb221c97 arm64: dts: rockchip: rk3399-tve1030g: support Android10.0
Change-Id: Ibfb895b658d1053c774c21925da7367d3bb8b3cb
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2019-12-16 16:27:00 +08:00
Shunqing Chen
cf05417063 drm: rockchip: dw-hdmi: fix the issue of hdmi unbind error
Change-Id: Ida30cf7f38209ee730ca87589e22f9cdbaef4953
Signed-off-by: Shunqing Chen <csq@rock-chips.com>
2019-12-16 15:52:57 +08:00
Jianqun Xu
3e49cc2bff Revert "drm: bridge: synopsys: dw-hdmi: Set dw-hdmi driver data"
This reverts commit db79b1540c.

Change-Id: I75a5ada2b6e6f8cfc7959221af1c85483d7a1a1f
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2019-12-16 15:52:57 +08:00
Wu Liangqing
f428402880 arm64: dts: rockchip: rk3399-android: changed adc_keys add power_keys node name
Change-Id: I6d7560ba712190582bd2ecca57b85b807f8781cb
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2019-12-16 15:25:52 +08:00
Yifeng Zhao
1aea7d3866 drivers: rk_nand: use BLK_STS_x instead of -EIO to fix bug
bug:
[   91.053943] WARNING: CPU: 0 PID: 1606 at block/blk-core.c:247 blk_status_to_errno+0x20/0x30
[   91.167875] Call trace:
[   91.168109]  blk_status_to_errno+0x20/0x30
[   91.168485]  dec_pending+0x108/0x228
[   91.168814]  clone_endio+0xa4/0x160
[   91.169134]  bio_endio+0xe0/0x190
[   91.169441]  blk_update_request+0xa4/0x370
[   91.169816]  blk_update_bidi_request+0x24/0x90

Change-Id: I703c1707cae442c99482a2a39f3b09d6585d06c5
Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>
2019-12-16 15:18:49 +08:00
Wu Liangqing
20d9407ed4 Revert "arm64: dts: rockchip: rk3399-evb-ind disabled dmc"
This reverts commit e7862a4a5d.

Change-Id: Ifb69fea34f757bea25ca407b5b47e63be20719ef
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2019-12-16 15:06:32 +08:00
Wang Panzhenzhuan
fd2e7e7070 arm64: dts: rockchip: rk3326-evb-lp3-v10-avb: add camera configs
Change-Id: Ic2d61cbd8a30608c61652a08cd194588bd2251c7
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
2019-12-16 14:13:56 +08:00
Jianqun Xu
911d2a2fe6 arm64: dts: rockchip: remove duplicated arm-pmu in rk3368 dtsi
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>
2019-12-13 19:15:46 +08:00
Alex Zhao
2b8a795846 net: wireless: update bcmdhd driver to 1.579.77.41.22
Change-Id: Ib5df542df130214999a3c2d4361c265fa8bcc39f
Signed-off-by: Alex Zhao <zzc@rock-chips.com>
2019-12-13 11:12:58 +08:00
Wang Jie
a18ff36155 arm64: dts: rockchip: add new rk3368 evb dts
This device tree is available for the new rk3368 evb board.

116f65166cfa arm64: dts: rockchip: rename 4G-Modem to rk_modem for rk3368-808
c4bbda67d371 arm64: dts: rockchip: add vcc_lcd for rk3368 808 evb.
2d6441c9c6fe arm64: dts: rockchip: add hdmi sound card for rk3368 808 evb.
24157837b3b1 arm64: dts: rockchip: add 4g modem for rk3368-808
97793844bcf4 arm64: dts: rockchip: modify rk3368-808 dts.
efa647d019bb arm64: dts: rockchip: add new rk3368 evb dts

Change-Id: Iadb9fd012b297092d54d1be96129e7b70f6b2b83
Signed-off-by: Wang Jie <dave.wang@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2019-12-13 09:37:25 +08:00
Algea Cao
d26602b9be drm: rockchip: dw-hdmi: Replace hdr_static_metadata with hdr_output_metadata
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>
2019-12-12 18:51:32 +08:00
Jianing Ren
16e46e0fc1 phy: phy-rockchip-inno-usb2: add EXTCON_USB_HOST working as peripheral
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>
2019-12-12 18:42:24 +08:00
Jianing Ren
24db9031d0 phy: phy-rockchip-inno-usb2: add iddig_output/en regs for rk3399
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>
2019-12-12 18:41:23 +08:00
Ding Wei
d31787415c video: rockchip: mpp: add function that trans info can set by user space
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>
2019-12-12 15:32:46 +08:00
Tao Huang
4a448336e4 video: rockchip: mpp: fix compile warning if !DEBUG_FS
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I181025ef7324c704a7f745d790f59e1780a3c0cb
2019-12-11 15:09:11 +08:00
Jianing Ren
f070ac5526 usb: dwc3: core: adjust the order of probe
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>
2019-12-11 14:48:23 +08:00
Ding Wei
29c272c498 video: rockchip: mpp: add control to query hw_id
Change-Id: I246f9484e5f6a9d8ed65bd4962d1472e717c3aa3
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
2019-12-11 14:41:36 +08:00
Wu Liangqing
e7862a4a5d arm64: dts: rockchip: rk3399-evb-ind disabled dmc
Change-Id: I3f5010c67e11fd416ec03cca44cf4358763b97b9
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2019-12-11 14:41:18 +08:00
Xiao Ya peng
79fbd388d3 ARM: dts: rk3229-evb: Enable the integrated PHY for gmac
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>
2019-12-11 14:39:59 +08:00
Wang Panzhenzhuan
74a1b24387 media: i2c: ov5695: fix mistake
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>
2019-12-11 14:35:06 +08:00
Grey Li
4bb14215a2 ARM: dts: rockchip: rk322x: add reset group for video codec
Change-Id: I875bb150095c6f68856896ea903296bf2f7a65ee
Signed-off-by: Grey Li <grey.li@rock-chips.com>
2019-12-11 14:21:37 +08:00
Grey Li
39a98f7f51 ARM: dts: rockchip: rk312x: add reset group for video codec
Change-Id: I92da8f6bd1b8c6c5c773a8742a9577e9b99111fa
Signed-off-by: Grey Li <grey.li@rock-chips.com>
2019-12-11 14:21:20 +08:00
Grey Li
6e2adf69ad arm64: dts: rockchip: rk3399: add reset group for video codec
Change-Id: I234cf68cc335c59837d1c771d264604b55812a37
Signed-off-by: Grey Li <grey.li@rock-chips.com>
2019-12-11 14:21:02 +08:00
Grey Li
8652ad19af arm64: dts: rockchip: rk3328: add reset group for video codec
Change-Id: I4e3e524a3e994c12675dc8b54a7c11f80f263d6b
Signed-off-by: Grey Li <grey.li@rock-chips.com>
2019-12-11 14:20:44 +08:00
Grey Li
d49b03a75f arm64: dts: rockchip: px30: add reset group for video codec
Change-Id: Iccb78ec6dbcefc410282b6adc92aa3709ece9729
Signed-off-by: Grey Li <grey.li@rock-chips.com>
2019-12-11 14:20:14 +08:00
Grey Li
39944a035f dt-bindings: video: mpp: add reset group
Change-Id: Ibffc586265f2cfc390d9fe4941d7cb91bc46bec4
Signed-off-by: Grey Li <grey.li@rock-chips.com>
2019-12-11 14:19:19 +08:00
Grey Li
4e985204d0 video: rockchip: mpp: add reset group for shared reset clk
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>
2019-12-11 14:19:06 +08:00
Tao Huang
f6bab64d54 ARM: rockchip_defconfig: enable CONFIG_PGTABLE_MAPPING
47 cycles/map vs 220 cycles/map

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I4d340c8ddf95213872b451672cdb9e3369d46f50
2019-12-11 11:49:30 +08:00
Tao Huang
e10ef9006c ARM: rockchip_defconfig: disable CONFIG_NAMESPACES
Save memory for Android.

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I7d99b001d6201cc21f820b3301fde4c86399f295
2019-12-11 11:49:30 +08:00
Tao Huang
2d093278ad ARM: rockchip_defconfig: disable CONFIG_RUNTIME_TESTING_MENU
Change-Id: Ib9fa509aa666c8371fd0befd57f7ed302dc8592e
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2019-12-11 11:49:30 +08:00
Tao Huang
dcbed7ddb6 ARM: rockchip_defconfig: disable CONFIG_KSM
Save memory and cpu usage for Android.
Base on android-recommended.config.

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Id4ecfafab836df8a7a8ba382fa5f32e516176368
2019-12-11 11:49:30 +08:00
Sugar Zhang
213457f1ef ASoC: rockchip: pcm: Adjust min/max value for pcm config
- 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>
2019-12-11 11:23:28 +08:00
Sugar Zhang
8ce747aebf ASoC: codec: hdmi-codec: add support for audio mode config
Change-Id: I4813e6204fee894ef4f40b3e3b768a1ad94d0a29
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2019-12-11 11:13:39 +08:00
roger
a34b88b1e1 net: phy: add sysfs node for reading PHY's registers
Change-Id: I76468dd235a39b6f79699b1cc931c2c7bb7bdbc5
Signed-off-by: roger <roger.chen@rock-chips.com>
Signed-off-by: David Wu <david.wu@rock-chips.com>
2019-12-11 11:11:36 +08:00
Sandy Huang
ebfdd50335 drm/rockchip: fix hdmi plug warning log
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>
2019-12-11 11:09:18 +08:00
Tao Huang
c57ffa3358 ARM: rockchip_defconfig: enable CONFIG_KERNEL_LZ4
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
2019-12-10 19:00:51 +08:00
Wu Liangqing
ad3b9d704d arm64: dts: rockchip: rk3399pro-evb-v11 supprot android10.0
Change-Id: I4b6d32c01b513f06cef5ea325fdb7f8fec26fb4e
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2019-12-10 09:14:41 +08:00
Xiao Ya peng
a59903c979 ARM: dts: rockchip: rk3229-evb-android-avb: remove firmwre_android node
Which is not needed for Android 10.

Change-Id: I0fd9b920dbaced7b6f507a07047413e756ffcf4f
Signed-off-by: Xiao Ya peng <yp.xiao@rock-chips.com>
2019-12-10 09:12:19 +08:00
Liang Chen
25797ef9e1 video: rockchip: mpp: probe driver later if regulator is not ready
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>
2019-12-09 20:41:14 +08:00
Zain Wang
eb5679251c arm64: dts: rockchip: rk3328-evb: add drm-logo
Change-Id: Ia94fd5f48ca7371b7a453afff959182b5a30496e
Signed-off-by: Zain Wang <wzz@rock-chips.com>
2019-12-09 20:27:26 +08:00
Ziyuan Xu
8813a764d0 arm64: dts: rockchip: claim playback-only for rk3326/px30 robot
Change-Id: I7bbafe847cff7b2eb7b084b350f655485df28406
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2019-12-09 20:04:31 +08:00
Ziyuan Xu
8a884199dc arm64: dts: rockchip: px30/rk3326: add rng as hardware random pool input
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>
2019-12-09 20:04:15 +08:00
Wu Jingchen
864072bf05 arm64: dts: rockchip: px30-evb-ddr3-v10: fix vcc5v0_host to SWITCH_REG2
Change-Id: I260f7364f52251976dfa7bbce810b8b1df80a8fe
Signed-off-by: Wu Jingchen <oven.wu@rock-chips.com>
2019-12-09 20:04:03 +08:00
Allon Huang
25e8efdd14 arm64: dts: rockchip: add cif_pin_m1 node for rk3326-evb-lp3-v10-robot-linux
Change-Id: Ia69eb4f02a4fa2b6f5a9cbf3b4764a896d20221a
Signed-off-by: Allon Huang <allon.huang@rock-chips.com>
2019-12-09 20:03:53 +08:00