Commit Graph

613344 Commits

Author SHA1 Message Date
David Wu
e283ecf388 arm64: dts: rockchip: Correct the reset time of rtl8211f phy for rk1808-evb
According to the PHY datasheet of rtl8211f, if the reset time
of the PHY is not enough, it will cause the PHY instability,
which has been encountered by other customers, need to take
longer than rtl8211e.

Change-Id: I2786c8b9005a3437d39d6b580d01f03c590848d6
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-22 11:29:34 +08:00
Shunqian Zheng
80de9b19d9 devfreq_cooling: inline the of_devfreq_cooling_register_power()
Make of_devfreq_cooling_register_power() as static inline.
This fixes the building error when CONFIG_THERMAL is disabled.

Change-Id: I3d88a3679de279a7ee7eadae7243b9661fdddf75
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
2018-10-22 11:28:10 +08:00
David Wu
d5635ca05b i2c: rk3x: Disable irq after i2c transfer finished
In some case,log like this:

[   12.393926] rk3x-i2c ff150000.i2c: irq in STATE_IDLE, ipd = 0x51
[   12.416592] rk3x-i2c ff150000.i2c: irq in STATE_IDLE, ipd = 0x51

The i2c clock is disabled, so the pending irq clean is not
worked. Disable the interrupt after the i2c jobs were done,
the error log would not happen.

Change-Id: If04a2e2214d675410c67db0f131ee7ef635ddcb4
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-22 11:11:08 +08:00
David Wu
9861dcac9c i2c: rk3x: Disable i2c controller after i2c transfer finished
If the slave hold the scl low for a long time, we will send
the stop because the i2c transfer is timeout. Then reset the
slave, the scl will be released to high by slave, the data
hold low, but the controller's state is messy now, need to
diable i2c controller, it is better to reset i2c controller,
it will go back to normal state.

The log like this:

[ 117.444700] rk3x-i2c ff3d0000.i2c: timeout, ipd: 0x93, state: 2
[ 118.466410] rk3x-i2c ff3d0000.i2c: timeout, ipd: 0x00, state: 1
[ 119.486217] rk3x-i2c ff3d0000.i2c: timeout, ipd: 0x00, state: 1

or

[  91.733176] rk3x-i2c ff3d0000.i2c: timeout, ipd: 0x80, state: 1
[ 103.406776] rk3x-i2c ff3d0000.i2c: timeout, ipd: 0x00, state: 2
[ 104.426636] rk3x-i2c ff3d0000.i2c: timeout, ipd: 0x00, state: 2

Change-Id: I53e6e383c849cea22d870f9488c23720e74115df
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-22 11:10:30 +08:00
Elaine Zhang
7393188064 clk: rockchip: rk1808: remove the apll from parents clk for npu
apll is always change,
not allowed apll as npu parent clk.

Change-Id: Ia354b7ac533c2c7537d2d25894f956b855db9bc6
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-22 11:09:26 +08:00
Joseph Chen
4202ab5440 regulator: fan53555: add TCS4525 DCDC support
TCS4525 main features:

- 2.7V to 5.5V Input Voltage Range;
- 3MHz Constant Switching Frequency;
- 5A Available Load Current;
- Programmable Output Voltage: 0.6V to 1.4V in 6.25mV Steps;
- PFM/PWM Operation for Optimum Increased Efficiency;

Change-Id: I7d4b8bbf38a5c74174b16ae4cb64d04f903a2902
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-10-22 11:08:20 +08:00
William Wu
f4093c1980 arm64: dts: rockchip: add snps,dis_u3_susphy_quirk for rk1808 dwc3
Add a quirk to avoid USB 3.0 PHY enter suspend mode when
the dwc3 controller suspend conditions are valid, it can
help to fix the dwc3 initialization error issue with the
following log:
dwc3 fd000000.dwc3: failed to enable ep0out

Change-Id: Iedcb9fa6c2c7fe923839362e35267fedb55889a7
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 11:05:43 +08:00
William Wu
c0cf944281 arm64: dts: rockchip: add otg vbus regulator for rk1808 evb
Add otg vbus regulator for rk1808 evb, it can provide
5V power supply for otg host.

Change-Id: Ib535993d5446c7fbf58e58ab748e8d565f81447f
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 11:05:43 +08:00
William Wu
67fbb411da arm64: dts: rockchip: support usb3 phy for rk1808 dwc3
The combphy which supports PCIe/USB3.0 on rk1808 has been
enabled, so we can used it as usb3-phy for DWC3 controller
by default.

Change-Id: I106885eb79621b40214bc2ebac43d8f87ac63687
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 11:05:43 +08:00
William Wu
eb613b7227 arm64: dts: rockchip: set usb3 suspend_clk to 24MHz for rk1808
The default clock frequency of usb3 suspend_clk is
32KHz, this patch sets the clock frequency to 24MHz
which from the xin24m parent.

Change-Id: Ia516a0d7b6c69b87a1ad6c69c421504477e18742
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 11:05:43 +08:00
William Wu
93d6616b1d arm64: dts: rockchip: enable combphy on rk1808 evb
Change-Id: I492f89d64de977f58229416488c249522e6a1b15
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 11:05:43 +08:00
William Wu
400884d434 arm64: dts: rockchip: add combphy node for rk1808
Add combphy node for rk1808, this phy can be used
as pcie-phy or usb3-phy.

Change-Id: Idddeabf32a21560ad134ff9cc0a9a3f406f8d1a7
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 11:05:43 +08:00
William Wu
eb0eaabd7c arm64: rk1808_linux_defconfig: enable INNO_COMBPHY
Change-Id: I2291ed84e8670fe6ddfb0201b8e9d9728e9d1123
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 11:05:43 +08:00
William Wu
89941824ca phy: add combo phy driver for Rockchip SoCs
This patch implements a combo phy driver for Rockchip SoCs
with Innosilicon IP block. This phy can be used as pcie-phy,
or usb3-phy.

Change-Id: Id2928d43a6210519961a7a27fc84b6eef2e59d74
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 10:51:27 +08:00
William Wu
84de60c5ae dt-bindings: phy: add bindings doc for rockchip combphy
It adds the device tree bindings for PCIE/USB3 combo PHY
found on Rockchip SoCs.

Change-Id: Ia9c62cfc248b055fc2d7ced66b5b7620f7e220e2
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-10-22 10:51:02 +08:00
Hu Kejun
b1960e63a4 media: soc_camera: ov13850: fix fps is not correct
Change-Id: Ice351569214c2681a36ec0791ab551cf8d0d8076
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-22 10:32:01 +08:00
Elaine Zhang
ac9bacb98d arm64: dts: rockchip: rk1808: add vd supply for pd_npu
Change-Id: I8792eef65d420c4467c8750ebe9f8876179e98fd
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-19 10:56:29 +08:00
Elaine Zhang
30b2b0583c soc: rockchip: power-domain: Add regulator support
The power domains are supplied by regulators. Add support for them so
that the regulators are properly turned on before a domain is powered up
and turned off when a domain is powered down.

Change-Id: I43ad569e1b82a8e818cbbf2ffcfa6a965d993bbf
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-19 10:56:29 +08:00
David Wu
4ebc216df2 arm64: dts: rockchip: I2C0 can use 400K frequency for rk1808-evb
The scl rise time of I2C0 is 200ns, so it can use 400K frequency.

Change-Id: I80933698ff7576b9406213aa50becc7736951a8d
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-19 10:55:50 +08:00
David Wu
b6331d5cd1 i2c: rk3x: Leave the irq handle if received nack irq
In the TRX mode, if there was a nack signal at the hardware's
tx, we can get start and nack ipd from the I2C_IPD register,
which will enter nack process, send stop command, change the
state to stop, and enter the handler of stop irq, but the stop
irq may not be generated, it has a latency. So the log will like
this:

[ 69.961944] rk3x-i2c ff650000.i2c: unexpected irq in STOP: 0x10
[ 70.959690] rk3x-i2c ff650000.i2c: timeout, ipd: 0x00, state: 4

This error log will confuse us, it is not easier to locate the problem,
we should get nack error at this time, and processing stop interrupt at
the next, then complete this i2c job.

Change-Id: I073ef288557b1b6f525d936e8f32d9d165c81ec4
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-19 10:53:58 +08:00
David Wu
71e358a704 arm64: dts: rockchip: Add i2cm1 pinctrl define for rk1808
Change-Id: I304676a66b816c112557fa86d98d75131c2b0573
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-19 10:12:09 +08:00
David Wu
e66f1a2221 arm64: dts: rockchip: Fix the i2c5 base register for rk1808
Change-Id: Icc1670aa58f3dc266a971978ce6674df311a209e
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-19 09:38:54 +08:00
David Wu
c2933b5621 i2c: rk3x: Add slave_hold_scl ipd clean
The bit7 of I2C_IPD register also needs to be clean, otherwise,
it will always exist.

Change-Id: Iee01bffd83909e84ed99c9fab821e621c970efd3
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-10-19 09:37:51 +08:00
Cai YiWei
894be9903f media: rockchip: isp1: config grf dvp datawidth
Change-Id: I173a2054d3f3878d0cc8b4f12236a5ce3f050834
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2018-10-19 09:35:08 +08:00
Cai YiWei
4e29453602 media: i2c: add imx323 driver
Change-Id: I273af9c7bfd205e5bf4406c105fb568c0928d274
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2018-10-19 09:35:08 +08:00
Cai YiWei
2d29886e36 dt-bindings: Document add imx323
Change-Id: I364b1a6fffdd4e2ac2461a16f872d22190c2c163
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2018-10-19 09:35:08 +08:00
Hu Kejun
454977fa07 media: rk-isp10: update to v0.2.2
Change-Id: I616d34cbfdb7ce2066081b82194ede3c5c41f9a1
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-19 09:14:26 +08:00
Hu Kejun
ce3911dc8c media: rk-isp10: support Y8/Y12 grey sensor
Change-Id: I8e157afa225eb2b4267232f58549921db00fc971
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-19 09:14:17 +08:00
Leo Wen
aab58a865b arm64: dts: rockchip: Add tc358749x node for rk3399-sapphire-excavator board
Change-Id: Ie4d8d2401bd7b717703f539da7073f30904e1926
Signed-off-by: Leo Wen <leo.wen@rock-chips.com>
2018-10-18 20:29:11 +08:00
Leo Wen
5972a5431b arm64: config: rockchip_linux_defconfig: enable CONFIG_VIDEO_TC35874X
Change-Id: Iabd99b8b007a49ae5fd2babf99497706c276e32e
Signed-off-by: Leo Wen <leo.wen@rock-chips.com>
2018-10-18 20:29:11 +08:00
Leo Wen
b08beb0cd8 media: i2c: tc35874x: Fix tc35874x cannot work properly
1.Change the format to MEDIA_BUS_FMT_UYVY8_2X8.
2.Add the PIXEL_RATE for control handlers.

Change-Id: I4f40e3d90765c12702210f88ad60f2147d328456
Signed-off-by: Leo Wen <leo.wen@rock-chips.com>
2018-10-18 20:29:11 +08:00
Hu Kejun
795691a170 media: rockchip: isp1: change list_del sequence for oops error
Change-Id: I5335a4929167736359f97acb7ff9b651260dd05e
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-18 20:27:47 +08:00
Yao Xiao
dd4b4b493a net: wireless: rkwifi: add SUPPORT_P2P_GO_PS to fix suspend issue
Change-Id: I23f563c1de9527f2a17ccbe90a61516b4f76b2a8
Signed-off-by: Yao Xiao <xiaoyao@rock-chips.com>
2018-10-18 20:20:12 +08:00
Zhangbin Tong
c263b11cc4 arm: dts: rk3128h-box-avb: change DDR SYS_STATUS_NORMAL frequency to 666Mhz
Change-Id: I9bc1a34a2a276d99d6119f44c0a9c4c4868a3bcc
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2018-10-18 20:19:54 +08:00
Xinhuang Li
7340ffccc0 ASoC: codecs: rk322x: reduce depop time to 100ms
200ms is too long which will make cts/gts fail,100ms
is enough in fact.

Change-Id: Ifa0c58a9cf878936f6fbc9074cf26ce3d10a3ab4
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
2018-10-18 20:19:26 +08:00
Xinhuang Li
d591e3af40 ASoC: codecs: rk3328: reduce depop time to 100ms
200ms is too long which will make cts/gts fail,100ms
is enough in fact.

Change-Id: I88c75c66fcb7831afb7c8a74de2f1b3d754b84aa
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
2018-10-18 20:19:10 +08:00
Hu Kejun
ecc3c11829 media: i2c: ov13850: fix fps is not correct on full size mode
the correct fps of full size mode is 7.5fps, is not 7fps.

Change-Id: I059fa403ea4a4f1e99c38ddea077e06925840505
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-18 20:11:47 +08:00
Finley Xiao
3bc9c2ad9d arm64: dts: rockchip: rk1808: Add clocks and power-domains for npu
Change-Id: Ie33157ebf277fd2ad008a1ae0a4e5725df3c2164
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-10-18 08:39:55 +08:00
Tao Huang
1bcce05752 arm64: rk1808_linux_defconfig: enable SRAM
Enable the Generic on-chip SRAM driver for VAD and NPU.

Change-Id: Ieb5cbb6ae053ec7a8c8b6ffe0921576a80f17636
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-18 08:38:18 +08:00
Dingqiang Lin
d5d6b8dcf6 drivers: rkflash: fix gc recovery bug
Read flash address is out of range.

Change-Id: I4926283c0b24bb6ae264155b89661022fd934825
Signed-off-by: Dingqiang Lin <jon.lin@rock-chips.com>
2018-10-17 19:23:45 +08:00
Caesar Wang
2713d82510 arm64: dts: rockchip: fixes the rk808's vddio-supply on rk3399-sapphire
From the schematic RK_SAPPHIRE_SOCBOARD_RK3399_LPDDR3D178P232SD8_V12,
the vcc33_3v0 supply power for vddio, and rk808's i2c used the 3.0v power.

Change-Id: Ib7546a100f6b6cf5406f4bd24a27db79bcdf4fc3
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2018-10-17 17:40:06 +08:00
Zhangbin Tong
3d94e8840a arm64: dts: rockchip: add new dts files for rk3328 android avb
Change-Id: I80e54687cfdc3395ae39ea4e58f0c3b44b14a33e
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2018-10-17 17:38:53 +08:00
Zhangbin Tong
3498cd6ce8 arm64: dts: rockchip: rk3328-android: separate android fireware
Split DT source files to separate out android fireware specific DT
bindings.

Change-Id: I8f4149cb645258d89fdc8742199126c1ff2af897
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2018-10-17 17:38:44 +08:00
Zhangbin Tong
7971432c7f arm: dts: rk3128h-box-avb: Add the possible "boot devices"
During uevent processing, some "by-name" symlinks will be created.
The following symlinks will then be created on the device.

	/dev/block/by-name/<partition> -> /dev/block/<type>/<device>/by-name/<partition>

Note that both <type> and <device> are skipped in the newly create symlinks.
It assumes there is no more than one devices with the same <partition>,
which is the assumption of current first stage mount flow.

When 'boot_devices' in DT is absent, it fallbacks to extract
'boot_devices' from fstab settings.

Change-Id: Ie7f721b1ae53245c324f7ef2c707e7776aeacf66
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2018-10-17 17:37:39 +08:00
Elaine Zhang
d8db4a4557 clk: rockchip: rk1808: add aclk_imemx CLK_IGNORE_UNUSED flag
Change-Id: I70ebbae78bef1b3ea15c18246460926517296a19
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-17 17:33:36 +08:00
Shunqing Chen
455a6c4231 power: rk817-battery: add POWER_SUPPLY_PROP_CHARGE_FULL for CTS.
Change-Id: I6756f4270ff1f4733551812ad19ecf6d8c456ee5
Signed-off-by: Shunqing Chen <csq@rock-chips.com>
2018-10-17 17:31:22 +08:00
Elaine Zhang
13f52249d0 clk: rockchip: rk1808: fix up the clk_pciephy_src parent
Change-Id: If2a071ab19a2b8902206ae9010dfd4e4aeddae48
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-16 17:26:47 +08:00
Zorro Liu
e43c7f22aa arm64: dts: rockchip: update configs for rk3399pro-npu-evb-v10 board
1.add npu node
2.fix fiq interrupt num
3.add usb otg
...

Change-Id: I9c03a86f673e6dd98fadc89473ff8563769c38b8
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2018-10-16 15:44:33 +08:00
Zorro Liu
926e96cc56 arm64: dts: rockchip: update some configs for rk3399pro-npu
- psci
- usbdrd3
- qos
- cru
- pd
...

Change-Id: I9a5292d0082b165960a97bdaa19bf947cc330e25
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2018-10-16 15:44:33 +08:00
Elaine Zhang
2559f096c7 clk: rockchip: rk1808: mark hsclk_imem as critical clock
hsclk_imem is pd_npu and pd_imem share niu clk.

Change-Id: I56e06edeb16340b2df7b1033c4fd65a61e22054e
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-16 11:10:28 +08:00