Commit Graph

1060922 Commits

Author SHA1 Message Date
Lin Jinhan
9c057f7652 dt-bindings: rng: Document the Rockchip TRNG V1 HW RNG bindings
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I3c70e5df2d7495edd5299f0283fc2bb934569a6b
2021-11-17 19:29:14 +08:00
Lin Jinhan
5c7f3b2116 hwrng: rockchip: move power management into rk_rng_read
There are two copies of the same power management code
 in rk_rng_v1_read and rk_rng_v2_read, moved to rk_rng_read.

Change-Id: I104cf22a8093213a6d22f7a723d3cfaf36aa4414
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
2021-11-17 19:27:42 +08:00
Lin Jinhan
8f3ec33049 arm64: dts: rockchip: rk3588s: rng: use scmi_clk
rng module should use scmi_clk rather than cru.

Fixes: b56b10f007 ("arm64: dts: rockchip: rk3588s: add rng node")
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I49994529fcc209c2bc173c1abc497536fb920302
2021-11-17 19:26:49 +08:00
Frank Wang
94dab507e0 usb: typec: fusb302: fix i_comp and i_bc_lvl interrupt
The software utilizes I_COMP and I_BC_LVL interrupts to determine an
attach and what type of port is attached. and I_COMP interrupt also
alerts software that a SRC detach has occurred. So unmask I_COMP for
SRC and I_BC_LVL for SNK.

Fixes: 48242e3053 ("usb: typec: fusb302: Revert "Resolve fixed power role contract setup")
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Change-Id: Ib4cf3b752d0db116f2603d5e1f3ee5c7d114714a
2021-11-17 18:47:51 +08:00
Sugar Zhang
0909f637bb clk: rockchip: rk3588: Fix digital-fracdiv signoff freq
All the digital-fracdiv signoff freq are the same, and up
to 1.5G on rk3588.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Id4b6b43c05b256a2b77d3c6c0603953b7340eca0
2021-11-17 18:39:40 +08:00
Sandy Huang
67a4a699aa drm/rockchip: vop2: update dsc config
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Id02ab53b59997e8a06dd8bcc1b8c158ca35c5595
2021-11-17 18:23:20 +08:00
Huang zhibao
da37a53ade arm64: dts: rockchip: rk3588-nvr-demo: add dp2vga support
Signed-off-by: Huang zhibao <hzb@rock-chips.com>
Change-Id: I68b6ae2d22c8b57003b3fab1cfeb811c792bd506
2021-11-17 18:18:17 +08:00
Sandy Huang
7a2e062e38 drm/rockchip: dsi2: init dsc info for dual channel mode
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ia67d7f57ff344cb9273458375209b576e5b4940d
2021-11-17 18:17:50 +08:00
Shawn Lin
151189f520 arm64: dts: rockchip: rk3588: Set SDHCI core clk to 200MHz
As we mask our SDHCI controller as SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN,
host->max_clk is derived from core clock in the first place. Then
f_max works together with it.

If we adjust loader's core clk setting, such as 50MHz, we will get
50MHz for host->max_clk, because .get_max_clock() reads core clk
when probing driver. That will lead f_max be set to 50MHz as well,
no matter if max-frequency is set higher than 50MHz.

We can simple solve this problem by assigning core clk as 200MHz
in the first place and then let max-frequency property takes over
it.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Change-Id: I25986720fa441da3786ca0904a2d4b1a5b0568e5
2021-11-17 18:13:16 +08:00
Yifeng Zhao
d6e5a46807 arm64: dts: rockchip: enable hs400 for rk3588 evbs
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: Ida8f8f6e355f158b2c6552e130b98a9526543d9d
2021-11-17 18:11:46 +08:00
Yifeng Zhao
ba5f874356 mmc: sdhci-of-dwcmshc: enable HS400 for rk3588
1. set CARD_IS_EMMC bit to enable Data Strobe for HS400
2. config the transmit clock source (DLL TX) is original clock input
3. config Command output source and Command output enable are from
register output triggered by clock falling edge

Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: I5b34fecde7bb1d05211c7d9c42f54c8e154d367e
2021-11-17 18:11:21 +08:00
Algea Cao
b73433e36e drm/rockchip: Add dw-hdmi-qp driver
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I6ac976dc3693bfdac1ac09570f2c4d0efb87fe9e
2021-11-17 18:01:49 +08:00
Algea Cao
691a8a86be arm64: rockchip_defconfig: enable CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX_HDMI
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I042d351a9adfee66b4c0cf2c05cde625bdc1e62a
2021-11-17 18:01:35 +08:00
Algea Cao
b4fa0a1a58 phy/rockchip: Add Samsung HDMI/DP Combo PHY HDMI driver
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I706f2c309e2553316957190d44c47f426a1f2594
2021-11-17 18:01:35 +08:00
Zhen Chen
583d67f999 MALI: bifrost: rk: add definition and implementation of CLK_RATE_TRACE_OPS
Picked from ./platform/devicetree/.

This makes GPU utilisation info available and resolve the warning log below:
[   19.641700][   T83] WARNING: CPU: 0 PID: 83 at drivers/gpu/arm/bifrost/csf/ipa_control/mali_kbase_csf_ipa_control.c:239 kbase_ipa_control_handle_gpu_power_off+0x128/0x198

Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
Change-Id: I7ce8d0f52d6340659b2c9ca9692c48043e1060c1
2021-11-17 17:00:34 +08:00
Huang zhibao
c61bb449b9 arm64: rockchip_linux_defconfig: Enable CONFIG_PHY_ROCKCHIP_USBDP
Signed-off-by: Huang zhibao <hzb@rock-chips.com>
Change-Id: I42fc00960d75ee0e45853d7b8d25451d95dfe532
2021-11-17 17:00:15 +08:00
Huang zhibao
b66c6faa49 arm64: rockchip_linux_defconfig: enable CONFIG_ROCKCHIP_DW_DP
Enable the DP driver used on Rockchip RK3588 SoC.

Signed-off-by: Huang zhibao <hzb@rock-chips.com>
Change-Id: I4d645edebf90ceaa35b52b0ccf029c17d1a51e67
2021-11-17 17:00:00 +08:00
Jianqun Xu
48ce88b1b5 arm64: dts: rockchip: fix rk3588s to use tsadc_shut iomux
To use tsadc_shut function, tsadc must switch to cru_shut_mode,
because tsadc_shut signal have to go through the cru to get to
tsadc_shut signal.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I9bc816db35bdf1c107db4e301d9f3353cb651dcf
2021-11-17 16:15:44 +08:00
Huang zhibao
799f5e763c arm64: dts: rockchip: rk3588-nvr-demo: fix pcie3.0 reset io
Signed-off-by: Huang zhibao <hzb@rock-chips.com>
Change-Id: I12030801ef502af553239702e06f52ac18f39e8e
2021-11-17 16:14:32 +08:00
Dongbo Yang
0b27ae1db5 misc: add driver for rk803.
Signed-off-by: Dongbo Yang <db.yang@rock-chips.com>
Change-Id: Ieba56551c48ed42f7f24c631b117d40a6e14a8f4
2021-11-17 16:14:04 +08:00
Kever Yang
a3a5483632 arm64: dts: rockchip: rk3588-evb: Add pcie3-phymode setting
rk3588 boards may have different pcie3-phymode, default as below id not
set:
rockchip,pcie30-phymode = <PHY_MODE_PCIE_AGGREGATION>;

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Change-Id: If158eb47f679d0c7b184b6bd64262d0f764b97f3
2021-11-17 16:08:30 +08:00
Kever Yang
70c3026b5f arm64: dts: rockchip: rk3588: Include phy-snps-pcie3.h
rk3588 boards may have different pcie3-phymode.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Change-Id: I76825c09014481a06af4c04d0b9b1cc0fee89a8d
2021-11-17 16:08:30 +08:00
Huang zhibao
1bae377ec6 arm64: dts: rockchip: rk3588-nvr-demo: add regulator-init-microvolt
Signed-off-by: Huang zhibao <hzb@rock-chips.com>
Change-Id: I5edd9b064f08e6249654678826cadb00caa75deb
2021-11-17 16:08:30 +08:00
Mark Huang
09a6f92f07 arm64: dts: rockchip: rk3588-nvr: enable gpu
Signed-off-by: Mark Huang <huangjc@rock-chips.com>
Change-Id: I0e6f97011882db50feb45b5794706bdcf2cdfe94
2021-11-17 14:16:14 +08:00
Frank Wang
b1368b8774 arm64: dts: rk3588: revert peripheral dr_mode for usbotg0
Restore usbotg0 dr_mode to "otg" that Type-C controller can switch the
mode via "role_switch" callback for RK3588 EVB1, EVB3 and EVB4.

Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Change-Id: I6e7d83acb468d50e31ffdfdee6adcd7c5330d776
2021-11-17 14:15:43 +08:00
Simon Xue
400193dc28 arm64: rockchip_defconfig: Enable CONFIG_ARM_SMMU_V3
There are two MMU600 instances in RK3588.

Change-Id: Iec54e5a9135bbdda01b0bcbe6681cee22ff775ac
Signed-off-by: Simon Xue <xxm@rock-chips.com>
2021-11-17 11:51:15 +08:00
Guochun Huang
42d1582e64 drm/panel: simple: fix unexpected pps packet sending
use helper functions to send dsi picture parameter set data
type packets, the size of struct drm_dsc_picture_parameter_set
is 128 bytes, it may be greater than the size of pps panel required,
so the redundant part should default to zero.

Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: I8b937b052cc0d579dd78859ef1aa04aea818d694
2021-11-17 11:22:04 +08:00
Wyon Bi
29d3f8c8b9 drm/rockchip: dw-dp: Fix audio infoframe buffer offset
drivers/gpu/drm/rockchip/dw-dp.c:1911 dw_dp_audio_infoframe_send()
error: hdmi_audio_infoframe_pack() '&buffer[4]' too small (26 vs 30)

Fixes: 9548fbb10c ("drm/rockchip: Add support for Synopsys DesignWare Cores DPTX")
Change-Id: I34142ae76b428c4ada3debfe80698af63ffd8f1f
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2021-11-17 11:17:56 +08:00
Shunhua Lan
ec1a0d929d ASoC: es8323: enable route config
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: Ia18a01afbd72195871d847ee3a17e7a7f9dca1c2
2021-11-17 11:16:54 +08:00
Sugar Zhang
72c304699f clk: rockchip: rk3588: Add audio fracpll freq
983040000 for SR:
  8k, 16k, 24k, 48k, 96k, 192k

903168000 for SR:
  11.025k 22.05k, 44.1k, 88.2k, 176.4k

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ibd4ab8e18cfc1e973d62b920084cfbe8d3000b0d
2021-11-17 09:37:15 +08:00
Shawn Lin
ee99fe07a7 PCIe: rockchip: Add more legacy int support
Some vendor drivers rely on flow control by toggling
enable/disable virtual irq if using legacy interrupt.
It can certainly change the behaviour by function
drivers, but adding corresponding operations would make
RC driver more flexible.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Change-Id: Idf3e6a0ca9c4ebde369745713a88db53e3f72ea5
2021-11-16 21:42:05 +08:00
Herman Chen
1933399fa0 video: rockchip: mpp: Fix error on mmu disabled
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Iba451314c8708de16a83af70bf4043da6341610b
2021-11-16 21:39:00 +08:00
Algea Cao
9849816257 arm64: dts: rockchip: Add rk3588s/rk3588 evb hdmi2.1/hdmi2.0 switch gpio
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I5f2ff51c634e690539e8468d34ee96f61576463d
2021-11-16 21:38:41 +08:00
Algea Cao
5d5fd11a6b arm64: dts: rockchip: rk3588: Add hdptx hdmi phy1 node
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ibbdf50fd1bc65d529fbbaa99db95d971abdcbdc8
2021-11-16 21:38:41 +08:00
Algea Cao
3fc0de144c arm64: dts: rockchip: rk3588s: Add hdptx hdmi phy0 node
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I99484d5a6c0c74612d40586a76bc946549f333eb
2021-11-16 21:38:41 +08:00
Alex Zhao
4e0db1dc60 arm64: rockchip_defconfig: Enable CONFIG_R8168
Add RTL8111HS ethernet card support for RK3588_EVB

Signed-off-by: Alex Zhao <zzc@rock-chips.com>
Change-Id: I0bfe2b088435830f3be08956dab2aedded5b73f7
2021-11-16 21:38:01 +08:00
Wyon Bi
9548fbb10c drm/rockchip: Add support for Synopsys DesignWare Cores DPTX
Add a new driver for Synopsys DesignWare Cores DPTX IP used
in Rockchip RK3588 SoC. The DPTX is compliant with the
DisplayPort Specification Version 1.4.

Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I0588aae8b3c9ae19ab7ee5d2c86673aa35cee2ff
2021-11-16 21:24:46 +08:00
Wyon Bi
c863c86b61 arm64: rockchip_defconfig: enable CONFIG_ROCKCHIP_DW_DP
Enable the DP driver used on Rockchip RK3588 SoC.

Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I9b6c817746c74bc3f50df302dfbdae1e80324fb8
2021-11-16 21:24:46 +08:00
Guochun Huang
f218e21726 drm/rockchip: dsi2: fix dsi2 host configuration process
in order to switch dsi2 working mode, operation DSI2_PWR_UP from
power on to power off and then power on, it may trigger dsi2 host
to send unexpected cmd to panel, resulting in panel abnormality,
therefore, do not operate DSI2_PWR_UP when switching the working
mode.

Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: I78d969dbc16262c9f7367fe5c25688d84cb1f935
2021-11-16 21:21:11 +08:00
Guochun Huang
1412119f85 drm/rockchip: dsi2: config ipi color depth/format in grf field
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: I2be5cdb2a73836b8c40875cd23aa6737d49915d9
2021-11-16 21:21:11 +08:00
Zhang Yubing
5e73ad7c2f phy: rockchip: usbdp-phy: fix dp lane select issue
1 rk3588_udphy_cfgs is used to define const data, remove
dp lane map grf register from it;
2 fix the dp lane mapping mismatch issue.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I3c179596c0c9c961afb0f0ee46a3b5f0f01d23a1
2021-11-16 19:37:37 +08:00
Zhang Yubing
49fd30eb91 phy: rockchip: usbdp-phy: add phy_set_bus_width when power on
In usbdp-phy, the DP function  can use all or only part of
the phy lanes.  This info need notify DP controller.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Ib943532d7a764602392837f9a9163af00e8e7918
2021-11-16 19:37:23 +08:00
Zhang Yubing
8081c70a82 phy: rockchip: usbdp-phy: add pointer check, avoid NULL pointer
When enter DP mode, exit DP mode, disconnect device, the data
is NULL. And only check the hpd is connect, set the gpio.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I7a3558c5ee5f954055fdd5edbbd50b5079d8f323
2021-11-16 19:37:17 +08:00
Zhang Yubing
3fb391ad45 phy: rockchip: usbdp-phy: fix the swing and pre-emphasis lane set
According the dp lane mapping, set the swing and pre-emphasis
to phy lane.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I77bec31a8a7b026db7e799991157114273ab0d4c
2021-11-16 18:50:33 +08:00
Zhang Yubing
266df05c62 arm64: dts: rockchip: add rk3588/rk3588s evb dp phy info
rk3588-evb1: dp0-->usbdp_phy0-->Typec-C
             dp1-->usbdp_phy1-->VGA:
               dp lane0-->phy lane2
               dp lane1-->phy lane3
rk3588-evb2: dp0-->usbdp_phy0-->DP:
               dp lane0-->phy lane2
               dp lane1-->phy lane3
             dp1-->usbdp_phy1-->VGA:
               dp lane0-->phy lane2
               dp lane1-->phy lane3
rk3588-evb3: dp0-->usbdp_phy0-->Typec-C
             dp1-->usbdp_phy1-->DP:
               dp lane0-->phy lane2
               dp lane1-->phy lane3
rk3588-evb4: dp0-->usbdp_phy0-->Typec-C
rk3588s-evb1: dp0-->usbdp_phy0-->Typec-C
rk3588s-evb2: dp0-->usbdp_phy0-->DP:
                dp lane0-->phy lane0
                dp lane1-->phy lane1
                dp lane2-->phy lane2
                dp lane3-->phy lane3
rk3588s-evb3: dp0-->usbdp_phy0-->Typec-C
rk3588s-evb4: dp0-->usbdp_phy0-->Typec-C

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I765f7920815e2a61f3bf8f60aca1cd0c8b234305
2021-11-16 18:50:33 +08:00
Zhang Yubing
b2b6e534ca arm64: dts: rockchip: rk3588: Add usbdp_phy0/1 into aliases node
rk3588 has 2 usbdp phy, usbdp phy use aliased id to identify
the 2 usbdp phy devices.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I59c634eb2c74ac48bbf067883c6ed12fd0e3e5eb
2021-11-16 18:50:33 +08:00
Andy Yan
cc89b4a276 drm/rockchip: vop2: Check fb->modifier in Cluster two win mode
Cluster two windows must use same data laylout.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Change-Id: I189bb88b055b4eaabb817ef2cd3ac2054a284cb6
2021-11-16 18:47:50 +08:00
Caesar Wang
a6ca525f8e arm64/configs: rockchip_linux_defconfig: enable wifi configure
+CONFIG_WL_ROCKCHIP=y
+CONFIG_WIFI_BUILD_MODULE=y
+CONFIG_AP6XXX=m
+CONFIG_BCMDHD_PCIE=y
-# CONFIG_NET_VENDOR_REALTEK is not set
+CONFIG_R8168=y

Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Change-Id: Icb986d4e419054beb5bb271f37f965e9120348ce
2021-11-16 18:26:43 +08:00
Kever Yang
55f515881d arm64: dts: rockchip: rk3588: Use apb for pcie controller name
The apb address is better identified than dbi address for pcie
controller.

Before patch:
[    4.302098][  T127] rk-pcie a40800000.pcie: PCIe Linking... LTSSM is 0x3
[    4.302141][  T123] rk-pcie a40c00000.pcie: PCIe Linking... LTSSM is 0x3
[    4.302167][  T124] rk-pcie a41000000.pcie: PCIe Linking... LTSSM is 0x3
[    4.328750][  T125] rk-pcie a40000000.pcie: PCIe Linking... LTSSM is 0x3
[    4.328767][  T126] rk-pcie a40400000.pcie: PCIe Linking... LTSSM is 0x2
After patch:
[    4.301712][  T123] rk-pcie fe180000.pcie: PCIe Linking... LTSSM is 0x3
[    4.301727][  T125] rk-pcie fe150000.pcie: PCIe Linking... LTSSM is 0x3
[    4.301779][  T127] rk-pcie fe170000.pcie: PCIe Linking... LTSSM is 0x3
[    4.301799][  T124] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3
[    4.328473][  T126] rk-pcie fe160000.pcie: PCIe Linking... LTSSM is 0x2

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Change-Id: Idabe2da42dd3f9bd1ff55d18c490d95fa48795fd
2021-11-16 18:05:54 +08:00
Kever Yang
9892e3a80c arm64: dts: rockchip: rk3588: Fix the pcie1ln setting
pcie1l0_sel pcie1l0->combPHY1
pcie1l1_sel pcie1l1->combPHY2

Fixes: a44f986d11 ("arm64: dts: rockchip: rk3588: Add pcie1ln setting for comboPHY")
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Change-Id: I604fec8563c7a82279eaa5e943af1ae69639f862
2021-11-16 18:03:20 +08:00