firefly-linux-kernel-4.4.55.git
6 years agodrm/rockchip: dw-mipi-dsi: modify the way to find the panel node
Jerry Xu [Wed, 2 Aug 2017 09:58:48 +0000 (17:58 +0800)]
drm/rockchip: dw-mipi-dsi: modify the way to find the panel node

Change-Id: Ib88c11d5c44d9dc465604ddf9b00e361ff7ac958
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agoARM: dts: rk322x: add reboot mode support.
Wenping Zhang [Wed, 2 Aug 2017 07:22:10 +0000 (15:22 +0800)]
ARM: dts: rk322x: add reboot mode support.

Change-Id: I5018ba43bb8dbdadbb7273042ac4237a1663168a
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
6 years agodrm/rockchip: vop: Fix unregister devfreq notifier unsuccessfully
Finley Xiao [Wed, 2 Aug 2017 08:19:50 +0000 (16:19 +0800)]
drm/rockchip: vop: Fix unregister devfreq notifier unsuccessfully

Change-Id: I0d1e02eea2af59d63ea2948e14277aa6ad9955b6
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3399: Correct reset-names for dsi
WeiYong Bi [Wed, 2 Aug 2017 08:38:49 +0000 (16:38 +0800)]
arm64: dts: rockchip: rk3399: Correct reset-names for dsi

Change-Id: Icf9b7e6dd7e1f660ca109dae4d13a9b0c6192ae3
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoarm64: rockchip_linux_defconfig: disable unless options
Randy Li [Thu, 20 Jul 2017 01:29:03 +0000 (09:29 +0800)]
arm64: rockchip_linux_defconfig: disable unless options

Those driver will never be used at rockchip platform and features
may not be widely used is disabled this time.

1. Ethernet drivers for the other platforms.
2. Network features which are used for IPSec(VPN), bandwidth
control or network management.
3. Disable strange input devices.
4. Disable those filesystems only used for special purposes.
5. Some misc devices only used in a few situations.
6. Disable all the security model except the unix default.

Change-Id: Iba9cef28099e6db4c44378fbb1a99c8d9a220847
Signed-off-by: Randy Li <randy.li@rock-chips.com>
6 years agodrm: fix mutex lock on connector register
Mark Yao [Wed, 2 Aug 2017 02:52:51 +0000 (10:52 +0800)]
drm: fix mutex lock on connector register

Fixes: c4a3cc5 ("drm: Paper over locking inversion after registration rework")
Change-Id: I43c8ec8ed7e21416a1e2531cd84d04ba148ad0c4
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: vop: reference vblank before queue to flip worker
Mark Yao [Wed, 2 Aug 2017 01:48:43 +0000 (09:48 +0800)]
drm/rockchip: vop: reference vblank before queue to flip worker

Reference vblank after the fb_unref_worker may have a problem:
    queue fb_unref_work
                         <--- unfer_worker:drm_crtc_vblank_put()
    drm_crtc_vblank_get

Following Warning may cause by this race:

[11749.638812] WARNING: at drivers/gpu/drm/drm_irq.c:1272
[11749.638818] Modules linked in:
[11749.638825]
[11749.638833] CPU: 4 PID: 8446 Comm: kworker/u12:1 Not tainted 4.4.77 #2428
[11749.638841] Hardware name: Rockchip RK3399 Excavator Board edp (Android) (DT)
[11749.638864] Workqueue: events_unbound flip_worker
[11749.638873] task: ffffffc0f1a7db00 ti: ffffffc0da3f8000 task.ti: ffffffc0da3f8000
[11749.638884] PC is at drm_vblank_put+0x34/0xac
[11749.638890] LR is at drm_crtc_vblank_put+0x20/0x2c
[11749.642771] [<ffffff8008473cb0>] drm_vblank_put+0x34/0xac
[11749.642778] [<ffffff8008473d48>] drm_crtc_vblank_put+0x20/0x2c
[11749.642786] [<ffffff80084a2894>] vop_fb_unref_worker+0x14/0x28
[11749.642792] [<ffffff800848c2a0>] flip_worker+0xa8/0xe8
[11749.642801] [<ffffff80080b73f4>] process_one_work+0x218/0x3e0
[11749.642808] [<ffffff80080b7df4>] worker_thread+0x2e8/0x404
[11749.642814] [<ffffff80080bc738>] kthread+0xf8/0x100
[11749.642821] [<ffffff8008082840>] ret_from_fork+0x10/0x50

Change-Id: I2b7f8a84d18e4635122b5028d39ec8192c6ca70b
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agoRK3368 GPU: Update to Rogue 5.12.
ZhuangXiaoLiang [Mon, 10 Jul 2017 09:14:17 +0000 (17:14 +0800)]
RK3368 GPU: Update to Rogue 5.12.

1. PP_fix_KM patch from IMG.
2. Fix PVRSRVDevicePreClockSpeedChange failed.

Change-Id: I8380b5b90a1a493f15cee73fd272b6eeaf5b8135
Signed-off-by: ZhuangXiaoLiang <zhuangxl@rock-chips.com>
6 years agoarm64: configs: rockchip_defconfig enable PowerVR G6110.
ZhuangXiaoLiang [Tue, 1 Aug 2017 06:30:48 +0000 (14:30 +0800)]
arm64: configs: rockchip_defconfig enable PowerVR G6110.

Change-Id: Iae2151ddf2a75c1257bdae16faa3aaad860326a0
Signed-off-by: ZhuangXiaoLiang <zhuangxl@rock-chips.com>
6 years agoRK3368 GPU: Rogue N Init.
ZhuangXiaoLiang [Mon, 10 Jul 2017 09:09:56 +0000 (17:09 +0800)]
RK3368 GPU: Rogue N Init.

1. Init Rogue_DDK_Android_REL_1.8.RTM@4610191_kbuild_overlay.tgz.
2. Add rockchip support for DDK 1.8.RTM@4610191.

Change-Id: If89d9656bf8d57b7a3db88b049461d9ebeb9b11a
Signed-off-by: ZhuangXiaoLiang <zhuangxl@rock-chips.com>
6 years agodrm/rockchip: dsi: Documentation: modify the dsi node
Jerry Xu [Tue, 1 Aug 2017 02:16:17 +0000 (10:16 +0800)]
drm/rockchip: dsi: Documentation: modify the dsi node

1. rename mipi_dsi to dsi0
2. add some properties, such as dual-channel
3. add dsi1 node

Change-Id: I623d31e26ce21f28036a0f665f3e69d8d60b199b
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agodrm/panel: simple: modify the name of the delay time for dsi
Jerry Xu [Tue, 1 Aug 2017 01:59:59 +0000 (09:59 +0800)]
drm/panel: simple: modify the name of the delay time for dsi

Change-Id: Ib0ec9dd0d29f13fd6249903b292c997b293ce987
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agoARM: dts: rk3288: modify the name of the delay time for dsi
Jerry Xu [Tue, 1 Aug 2017 01:57:42 +0000 (09:57 +0800)]
ARM: dts: rk3288: modify the name of the delay time for dsi

Change-Id: If95824e556a9d1d75f4a674d4e95e332a8f16cae
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: use specific poll helper
Jerry Xu [Mon, 31 Jul 2017 10:10:51 +0000 (18:10 +0800)]
drm/rockchip: dw-mipi-dsi: use specific poll helper

As the documentation for readx_poll_timeout says, we want to use the
specialized macro for readl rather than using the generic version
directly.

Change-Id: I864b350f0e1b0e24bd3a7e2b0b1c4c231e9acc18
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agoARM: dts: rk3288: dts configuration example for dual-channel dsi panel
Jerry Xu [Mon, 31 Jul 2017 09:56:56 +0000 (17:56 +0800)]
ARM: dts: rk3288: dts configuration example for dual-channel dsi panel

Change-Id: I6557681b51026a0f216f873b9a49048dd374acef
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3399-android: add route-dsi1 node
WeiYong Bi [Thu, 6 Jul 2017 09:34:30 +0000 (17:34 +0800)]
arm64: dts: rockchip: rk3399-android: add route-dsi1 node

Change-Id: I0978d80237276d84f9df51d97997dd861aa8ae96
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3399: add dsi1 node
WeiYong Bi [Wed, 21 Jun 2017 01:09:57 +0000 (09:09 +0800)]
arm64: dts: rockchip: rk3399: add dsi1 node

Change-Id: I964f047b0cf9f6355d61630d03181f229fdd8c15
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agodrm/rockchip: vop: add data01_swap support
WeiYong Bi [Wed, 5 Jul 2017 09:17:27 +0000 (17:17 +0800)]
drm/rockchip: vop: add data01_swap support

Change-Id: I4a00e7d5efe49ee9621ed7218a10e0ef1628ee47
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agousb: dwc_otg_310: support battery charger detect for rk3288w
William Wu [Tue, 1 Aug 2017 07:23:06 +0000 (15:23 +0800)]
usb: dwc_otg_310: support battery charger detect for rk3288w

rk3288 and rk3288w use different compatible string, so add
"rockchip,rk3288w" to support rk3288w.

Change-Id: I828f09d26fea30921159f24ce9bdffd286df777a
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agousb: ehci-platform: use no relinquish port quirk only for rk3288
William Wu [Tue, 1 Aug 2017 07:15:00 +0000 (15:15 +0800)]
usb: ehci-platform: use no relinquish port quirk only for rk3288

rk3288 and rk3288w use the same dts which includes no relinquish
port quirk, however rk3288w ohci can work well, so we need to add
an additional condition to disable ohci only for rk3288.

Change-Id: Ic2bd0ce577cbebe7ae2cf1b153f9e46935022f77
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agousb: ohci-platform: disable ohci for rk3288
William Wu [Tue, 1 Aug 2017 06:59:42 +0000 (14:59 +0800)]
usb: ohci-platform: disable ohci for rk3288

rk3288 ohci doesn't actually work on hardware, so we
need to disable it in ohci-platform driver.

Change-Id: I72750edda67358ff1e8fe66047bf60420500997e
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agoARM: dts: rockchip: enable ohci for rk3288-evb
William Wu [Tue, 1 Aug 2017 06:54:59 +0000 (14:54 +0800)]
ARM: dts: rockchip: enable ohci for rk3288-evb

Change-Id: I8eaa71694dd132a32b00ef273aaaeb8835a22cb9
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agoARM: dts: rockchip: add usb ohci node for rk3288
William Wu [Tue, 1 Aug 2017 06:40:24 +0000 (14:40 +0800)]
ARM: dts: rockchip: add usb ohci node for rk3288

rk3288 and rk3288w have an ohci controller, although rk3288
ohci doesn't actually work on hardware, but rk3288w ohci can
work well, so we need to add usb ohci node in dts, and then
add a quirk in ohci driver to disable ohci for rk3288.

Change-Id: I0ce26a9851f6bc3c82cc8b7dc16ecc7b4ce2ca28
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agoARM: dts: rockchip: fix reg size for rk3288 ehci
William Wu [Tue, 1 Aug 2017 06:25:12 +0000 (14:25 +0800)]
ARM: dts: rockchip: fix reg size for rk3288 ehci

According to rk3288 TRM, the size of usb ehci is 128K,
so let's fix it in dts.

Change-Id: I1adf02080033906a88b34cae877bb84ad0f63059
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agoarm64: dts: rk3368: enable dfi and dmc nodes for sheep board
Finley Xiao [Thu, 6 Apr 2017 08:59:32 +0000 (16:59 +0800)]
arm64: dts: rk3368: enable dfi and dmc nodes for sheep board

Change-Id: I7b73448ab1bb812fc026931651be66f2db010e76
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agodrm/rockchip: vop: add mutex lock to two vops
Finley Xiao [Mon, 31 Jul 2017 10:53:48 +0000 (18:53 +0800)]
drm/rockchip: vop: add mutex lock to two vops

Each vop should add mutex lock when do ddr frequceny change.

Change-Id: Ie63c90b0b4421d1be6bf8bdc9ff3b179fdf2193d
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agodrm/rockchip: vop: correct pin_pol define
Mark Yao [Tue, 1 Aug 2017 08:28:04 +0000 (16:28 +0800)]
drm/rockchip: vop: correct pin_pol define

Fixes: b2d8717 ("drm/rockchip: vop: split dclk_pol from pin_pol")
Change-Id: If756fe0791d41c7084296f4f28481cbc665f09c4
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agonet: wireless: rockchip_wlan: add rtl8723ds support
zzc [Tue, 1 Aug 2017 07:28:28 +0000 (15:28 +0800)]
net: wireless: rockchip_wlan: add rtl8723ds support

update rtl8723ds wifi driver to version v5.1.1.5_20523.20161209_BTCOEX20161208-1212

Change-Id: Ifd44ce917d1fcb47696b893f2293ed932952bdef
Signed-off-by: zzc <zzc@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: add dual-channel dsi support
Jerry Xu [Fri, 28 Jul 2017 07:56:52 +0000 (15:56 +0800)]
drm/rockchip: dw-mipi-dsi: add dual-channel dsi support

Change-Id: I11f203794d9b07a6a60e0c583827154da8c9daf6
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: adjust the calculation of lane_mbps
Jerry Xu [Fri, 28 Jul 2017 07:09:55 +0000 (15:09 +0800)]
drm/rockchip: dw-mipi-dsi: adjust the calculation of lane_mbps

adjust the calculation of lane_mbps to distinguish between
two different phy. also convenient to add support for dual-channel

Change-Id: I2916d880202bba11b9db1fa48a7534fc1f65e331
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agoARM: dts: rk3288: add dual-channel dsi support
Jerry Xu [Fri, 28 Jul 2017 02:38:58 +0000 (10:38 +0800)]
ARM: dts: rk3288: add dual-channel dsi support

Change-Id: Ic28014af8e5a264f6ccf760caf7ef888392ff63d
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
6 years agousb: dwc_otg_310: set operational mode of phy to normal when suspend for rk3368
Meng Dongyang [Tue, 17 Jan 2017 03:46:57 +0000 (11:46 +0800)]
usb: dwc_otg_310: set operational mode of phy to normal when suspend for rk3368

The phy driver of otg port set operational mode to non-driving
when suspend and set to normal when resume. But if we connect
with low speed, it may be disconnected after suspend and resume
by the changing of operational mode. In addition, the linestate
change interrupt flag can't be cleared if the operational mode
is non-driving. This patch set operational mode to normal even
if the phy is suspended, and make sure that operational mode is
same during suspend and resume.

Change-Id: I670d2cbd4e7c4dc115a735feef848f36f120c295
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agoARM: dts: rockchip: add RK3126 eavluation board devicetree
Chen Liang [Wed, 14 Jun 2017 06:42:54 +0000 (14:42 +0800)]
ARM: dts: rockchip: add RK3126 eavluation board devicetree

This patch add rk3126-evb.dts for RK3126 evaluation board.
Tested on RK3126 evb.

Change-Id: I56d416416e16e9a8f8f0a57d926aad7ac2fadbba
Signed-off-by: Chen Liang <cl@rock-chips.com>
6 years agoARM: dts: rockchip: add core dtsi file for RK3126 and RK3128 SoCs
Chen Liang [Wed, 14 Jun 2017 06:41:17 +0000 (14:41 +0800)]
ARM: dts: rockchip: add core dtsi file for RK3126 and RK3128 SoCs

This patch adds core dtsi file for Rockchip RK3126 and RK3128 SoCs.

Change-Id: I4b64594a8d0351f65a6947e16ec0682d6ac2520e
Signed-off-by: Chen Liang <cl@rock-chips.com>
6 years agoclk: rockchip: rk3128: modify rk3128 clk driver to support rk3126
Elaine Zhang [Mon, 24 Jul 2017 06:48:53 +0000 (14:48 +0800)]
clk: rockchip: rk3128: modify rk3128 clk driver to support rk3126

rk3128 and rk3126 have some gate registers describe differences.
So need to make some distinctions.
The RK3126 and RK3128 Same clock description we move it to
the common clock branches.
And the different clks description use the own clock branches.

Change-Id: If9571da0a86067d814c225629a6b6f07f0270f14
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
6 years agoarm64: dts: rockchip: support cluster idle feature for rk3366
tony.xie [Mon, 24 Jul 2017 06:29:20 +0000 (14:29 +0800)]
arm64: dts: rockchip: support cluster idle feature for rk3366

1) Add cluster sleep mode in cpu idle_states for RK3366 SoCs.
2) Modify cpu idle parameter.

Change-Id: I538c0bead8642c3642448edfe9971a3b09e919e0
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
6 years agovideo: rockchip: vpu: add core&cabac&niu_a|h reset
Jung Zhao [Mon, 31 Jul 2017 09:11:21 +0000 (17:11 +0800)]
video: rockchip: vpu: add core&cabac&niu_a|h reset

Change-Id: Ied8f16b79ac0142fadbc1ce3a3f47ede7d22790b
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
6 years agosoc: rockchip: pvtm: fix undefined reference to rockchip_get_pvtm_value
Finley Xiao [Fri, 28 Jul 2017 07:36:07 +0000 (15:36 +0800)]
soc: rockchip: pvtm: fix undefined reference to rockchip_get_pvtm_value

This patch fixed compilation error when compiled rockchip_linux_defconfig
without CONFIG_ROCKCHIP_PVTM

Change-Id: Icb43485a9ce8dca0e40507b370487b89617813c4
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3399-android: enable pvtm
Finley Xiao [Fri, 28 Jul 2017 07:35:23 +0000 (15:35 +0800)]
arm64: dts: rockchip: rk3399-android: enable pvtm

Change-Id: Id84681069a4e83c8307cdf5baef3a6126af0edb2
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agoarm64: dts: rockchip: rename mipi to dsi for rk3399
WeiYong Bi [Wed, 31 May 2017 07:56:16 +0000 (15:56 +0800)]
arm64: dts: rockchip: rename mipi to dsi for rk3399

Change-Id: I6c6fb4e0399b805dfa012cc5562ad71103aa85e9
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agowatchdog: dw_wdt: fix overflow issue in dw_wdt_top_in_seconds
Huibin Hong [Thu, 27 Jul 2017 12:27:09 +0000 (20:27 +0800)]
watchdog: dw_wdt: fix overflow issue in dw_wdt_top_in_seconds

If top is 15, (1 << (16 + top)) may be negative.

Change-Id: I76e4a603a54f093e64a4b266008570e3afcdb35a
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
6 years agoARM: dts: rockchip: rk3288-android add vmalloc=496M
Jianqun Xu [Fri, 28 Jul 2017 08:02:11 +0000 (16:02 +0800)]
ARM: dts: rockchip: rk3288-android add vmalloc=496M

Change-Id: Ia26646946a74554aa298bc5a13d9fcadb5bd0a21
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
6 years agodrm/rockchip: vop: add dual-channel dsi support
WeiYong Bi [Sat, 24 Jun 2017 02:33:47 +0000 (10:33 +0800)]
drm/rockchip: vop: add dual-channel dsi support

Change-Id: Ibddc064c6c588d0733a238b08b7ba4c5bd4518a2
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoRevert "clk: rockchip: rk3368: Add CLK_IGNORE_UNUSED flag for mipi phy refclk"
WeiYong Bi [Wed, 19 Jul 2017 01:11:21 +0000 (09:11 +0800)]
Revert "clk: rockchip: rk3368: Add CLK_IGNORE_UNUSED flag for mipi phy refclk"

This reverts commit 71d279801cbef49aa6d5c2355c5015aee4a4c6e2.

Change-Id: I2e258616f64458a29845308cf697b00be2e0460c
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoarm64: dts: rockchip: remove unused "rockchip,dsi-panel" property
WeiYong Bi [Fri, 14 Jul 2017 07:48:00 +0000 (15:48 +0800)]
arm64: dts: rockchip: remove unused "rockchip,dsi-panel" property

Change-Id: I144776a377bf3eeb5e56065fa9aff7c2c43c8e6d
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agodrm/rockchip: dsi: Clearly distinguish between SNPS PHY and Non-SNPS PHY
WeiYong Bi [Thu, 13 Jul 2017 07:15:13 +0000 (15:15 +0800)]
drm/rockchip: dsi: Clearly distinguish between SNPS PHY and Non-SNPS PHY

Change-Id: Ia947050f444eac75e951ddc8cd7e0b4453673094
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3368: export MIPI DPHY PLL clock
WeiYong Bi [Mon, 17 Jul 2017 02:58:32 +0000 (10:58 +0800)]
arm64: dts: rockchip: rk3368: export MIPI DPHY PLL clock

Change-Id: I15ef0a01cde0459d1993110f5653f6bf10f99a64
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3366: export MIPI DPHY PLL clock
WeiYong Bi [Thu, 13 Jul 2017 07:12:14 +0000 (15:12 +0800)]
arm64: dts: rockchip: rk3366: export MIPI DPHY PLL clock

Change-Id: I99a4c252f877ff36a16f991ee2e94bb110401e47
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agophy: rockchip-inno-mipi-dphy: export PLL clock
WeiYong Bi [Thu, 13 Jul 2017 08:19:08 +0000 (16:19 +0800)]
phy: rockchip-inno-mipi-dphy: export PLL clock

Change-Id: I1eb96241930e380997dd66f3a3b479fe53a72a98
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoarm64: dts: rockchip: fix pwm3 pinctrl for rk3368
Zhou weixin [Mon, 24 Jul 2017 08:24:31 +0000 (16:24 +0800)]
arm64: dts: rockchip: fix pwm3 pinctrl for rk3368

Change-Id: I0e232a4df41d88afadd6a99011a71bbacab6e375
Signed-off-by: Zhou weixin <zwx@rock-chips.com>
6 years agodrm/rockchip: vop: only initial pll for enabled vop
Mark Yao [Thu, 27 Jul 2017 03:27:24 +0000 (11:27 +0800)]
drm/rockchip: vop: only initial pll for enabled vop

Change-Id: I33521c7ca57869913e94522b19ff3a2a20250829
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: vop: move dclk pll into vop private data
Mark Yao [Thu, 27 Jul 2017 03:18:35 +0000 (11:18 +0800)]
drm/rockchip: vop: move dclk pll into vop private data

each vop only need one dclk pll reference, Save dclk pll
on rockchip_crtc_state would make things complex

Change-Id: Id779f1bf54d5bfa52aed413c238781083f333782
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agoarm64: dts: rockchip: add rktimer device node for rk3366
tony.xie [Fri, 21 Jul 2017 08:10:52 +0000 (16:10 +0800)]
arm64: dts: rockchip: add rktimer device node for rk3366

Select rktimer0 as broadcast timer.

Change-Id: I1f9d80d920b063135c3b220b4df995eb5fcefa44
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
6 years agoARM: dts: rk3229-gva-sdk: update changes for new gva hardware.
Wenping Zhang [Tue, 25 Jul 2017 09:55:06 +0000 (17:55 +0800)]
ARM: dts: rk3229-gva-sdk: update changes for new gva hardware.

1. use emmc instead of nand.
2. enable cypress cy8c4024 touchpad support.

Change-Id: Ie9e72516601f2af8caaa1325b98d1574d010a22f
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
6 years agoARM: rockchip_defconfig: enable TOUCHSCREEN_CY8C40XX.
Wenping Zhang [Tue, 25 Jul 2017 09:52:43 +0000 (17:52 +0800)]
ARM: rockchip_defconfig: enable TOUCHSCREEN_CY8C40XX.

Change-Id: I2d21f06116f4af6a1dbcd1f0dd3444bded085487
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
6 years agoinput: touchscreen: add cy8c40xx touchpad support.
Wenping Zhang [Fri, 16 Jun 2017 02:17:01 +0000 (10:17 +0800)]
input: touchscreen: add cy8c40xx touchpad support.

Change-Id: I765177ee00472e19b8bc6fcbdb79db4ea914f3a9
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
6 years agoMerge tag 'lsk-v4.4-17.07-android' of git://git.linaro.org/kernel/linux-linaro-stable.git
Huang, Tao [Wed, 26 Jul 2017 11:32:04 +0000 (19:32 +0800)]
Merge tag 'lsk-v4.4-17.07-android' of git://git.linaro.org/kernel/linux-linaro-stable.git

LSK 17.07 v4.4-android

* tag 'lsk-v4.4-17.07-android': (402 commits)
  dt/vendor-prefixes: remove redundant vendor
  Linux 4.4.77
  saa7134: fix warm Medion 7134 EEPROM read
  x86/mm/pat: Don't report PAT on CPUs that don't support it
  ext4: check return value of kstrtoull correctly in reserved_clusters_store
  staging: comedi: fix clean-up of comedi_class in comedi_init()
  staging: vt6556: vnt_start Fix missing call to vnt_key_init_table.
  tcp: fix tcp_mark_head_lost to check skb len before fragmenting
  md: fix super_offset endianness in super_1_rdev_size_change
  md: fix incorrect use of lexx_to_cpu in does_sb_need_changing
  perf tools: Use readdir() instead of deprecated readdir_r() again
  perf tests: Remove wrong semicolon in while loop in CQM test
  perf trace: Do not process PERF_RECORD_LOST twice
  perf dwarf: Guard !x86_64 definitions under #ifdef else clause
  perf pmu: Fix misleadingly indented assignment (whitespace)
  perf annotate browser: Fix behaviour of Shift-Tab with nothing focussed
  perf tools: Remove duplicate const qualifier
  perf script: Use readdir() instead of deprecated readdir_r()
  perf thread_map: Use readdir() instead of deprecated readdir_r()
  perf tools: Use readdir() instead of deprecated readdir_r()
  ...

Conflicts:
Makefile
drivers/Kconfig
drivers/Makefile
drivers/usb/dwc3/gadget.c

Change-Id: Ib4aae2e34ebbf0d7953c748a33f673acb3e744fc

6 years agoarm64: dts: rockchip: rk3399: add cabc lut register
Mark Yao [Fri, 7 Jul 2017 09:06:26 +0000 (17:06 +0800)]
arm64: dts: rockchip: rk3399: add cabc lut register

Change-Id: Ia4b47301b58141b24e75e35544beb903325e0a19
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agoUPSTREAM: drm/rockchip: Always signal event in next vblank after cfg_done
Tomasz Figa [Wed, 14 Sep 2016 12:55:00 +0000 (21:55 +0900)]
UPSTREAM: drm/rockchip: Always signal event in next vblank after cfg_done

This patch makes the driver send the pending vblank event in next vblank
following the commit, relying on vblank signalling improvements done in
previous patches. This gives us vblank events that always represent the
real moment of changes hitting on the screen (which was the case only
for complete FB changes before) and lets us remove the manual window
update check.

Signed-off-by: Tomasz Figa <tfiga@chromium.org>
(cherry picked from commit 41ee436700f41260663d0b201585551745b623d0)

Change-Id: Icb1d14cb8af942e39407cc6205a58b9c5e31122b
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: fix mm_dump NULL pointer crash
Mark Yao [Wed, 26 Jul 2017 07:34:09 +0000 (15:34 +0800)]
drm/rockchip: fix mm_dump NULL pointer crash

drm mm is not initial on non-iommu context.

Fix crash:
[   11.635376] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[   11.636148] pgd = ffffffc0de19d000
[   11.636474] [00000000] *pgd=0000000000000000, *pud=0000000000000000
[   11.637088] Internal error: Oops: 96000045 [#1] PREEMPT SMP
[   11.637594] Modules linked in:
[   11.637902] CPU: 4 PID: 424 Comm: sh Not tainted 4.4.71 #146
[   11.638406] Hardware name: Rockchip RK3399 Evaluation Board v3 (Android) (DT)
[   11.639050] task: ffffffc0de796800 ti: ffffffc0de260000 task.ti: ffffffc0de260000
[   11.639736] PC is at __mutex_lock_slowpath+0xa8/0x178
[   11.640198] LR is at __mutex_lock_slowpath+0x7c/0x178
[   11.788003] [<ffffff8008b85b5c>] __mutex_lock_slowpath+0xa8/0x178
[   11.788560] [<ffffff8008b85c58>] mutex_lock+0x2c/0x44
[   11.789024] [<ffffff800849e8d8>] rockchip_drm_mm_dump+0x30/0x5c
[   11.789560] [<ffffff80081d612c>] seq_read+0x1a8/0x3f8
[   11.790017] [<ffffff80081b4208>] __vfs_read+0x38/0xf4
[   11.790472] [<ffffff80081b4adc>] vfs_read+0x84/0x128
[   11.790927] [<ffffff80081b552c>] SyS_read+0x54/0xa4
[   11.791372] [<ffffff80080828b0>] el0_svc_naked+0x24/0x28

Change-Id: I342311da43d50b743257b81425dfc6a327306803
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3366-android: enable vop lite
Mark Yao [Mon, 24 Jul 2017 07:33:34 +0000 (15:33 +0800)]
arm64: dts: rockchip: rk3366-android: enable vop lite

Change-Id: Ia10a57b86343048e038cb40a4e96de850cc707bc
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3366: add vop lite support
Mark Yao [Mon, 24 Jul 2017 07:28:53 +0000 (15:28 +0800)]
arm64: dts: rockchip: rk3366: add vop lite support

Change-Id: I0e8afc5e7bc6b8e4f37b7d34e9126e931df68347
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: vop: add rk3366 vop lit support
Mark Yao [Mon, 24 Jul 2017 07:44:36 +0000 (15:44 +0800)]
drm/rockchip: vop: add rk3366 vop lit support

Change-Id: Iaf869f0fbf7b703dff3c38e9df4b8570d9260bd4
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: vop: split dclk_pol from pin_pol
Mark Yao [Mon, 24 Jul 2017 07:43:40 +0000 (15:43 +0800)]
drm/rockchip: vop: split dclk_pol from pin_pol

Some vop have a difference pin_pol layout

Change-Id: I96c4dc9fbc00470828748a926d6248c5a5772c82
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agoPM / OPP: add a summary tree in debugfs
Finley Xiao [Tue, 25 Jul 2017 07:49:17 +0000 (15:49 +0800)]
PM / OPP: add a summary tree in debugfs

On rk3399-evb-rev3 the opp_summary would for example look something like:
 device                rate(Hz)    target(uV)    min(uV)    max(uV)
-------------------------------------------------------------------
 platform-dmc
                      200000000       825000      825000      825000
                      300000000       850000      850000      850000
                      400000000       850000      850000      850000
                      528000000       900000      900000      900000
                      600000000       900000      900000      900000
                      800000000       900000      900000      900000
 platform-ff9a0000.gpu
                      200000000       800000      800000      800000
                      297000000       800000      800000      800000
                      400000000       825000      825000      825000
                      500000000       875000      875000      875000
                      600000000       925000      925000      925000
                      800000000      1100000     1100000     1100000
 cpu4
                      408000000       800000      800000      800000
                      600000000       800000      800000      800000
                      816000000       800000      800000      800000
                     1008000000       850000      850000      850000
                     1200000000       875000      875000      875000
                     1416000000       975000      975000      975000
                     1608000000      1025000     1025000     1025000
                     1800000000      1125000     1125000     1125000
 cpu0
                      408000000       800000      800000      800000
                      600000000       800000      800000      800000
                      816000000       800000      800000      800000
                     1008000000       850000      850000      850000
                     1200000000       925000      925000      925000
                     1416000000      1050000     1050000     1050000

Change-Id: I0d33bb84fd36d79df3c1630d98c84f1f6bc42728
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agoUPSTREAM: debugfs: add debugfs_lookup()
Omar Sandoval [Tue, 31 Jan 2017 22:53:17 +0000 (14:53 -0800)]
UPSTREAM: debugfs: add debugfs_lookup()

We don't always have easy access to the dentry of a file or directory we
created in debugfs. Add a helper which allows us to get a dentry we
previously created.

The motivation for this change is a problem with blktrace and the blk-mq
debugfs entries introduced in 07e4fead45e6 ("blk-mq: create debugfs
directory tree"). Namely, in some cases, the directory that blktrace
needs to create may already exist, but in other cases, it may not. We
_could_ rely on a bunch of implied knowledge to decide whether to create
the directory or not, but it's much cleaner on our end to just look it
up.

Signed-off-by: Omar Sandoval <osandov@fb.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Jens Axboe <axboe@fb.com>
(cherry picked from commit a7c5437b0bbec5165df6eb1efc5e37dc40b9e05d)

Change-Id: I77b6f2c7df32f904099d23771a53065315cfdc12

6 years agodrm/rockchip: vop: fix background color
Mark Yao [Tue, 25 Jul 2017 10:10:42 +0000 (18:10 +0800)]
drm/rockchip: vop: fix background color

Change-Id: Idbd43b4456df80e2243ce09c3bc69d8be6e0af6a
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: configure grf register for 3399
Xubilv [Tue, 25 Jul 2017 10:13:30 +0000 (18:13 +0800)]
drm/rockchip: dw-mipi-dsi: configure grf register for 3399

Change-Id: I6ad75b05a02b15fc8744f5f25fc996cd0d4bc2fb
Fixes: 39d1c0c4a328 ("drm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_encoder_enable function")
Signed-off-by: Xubilv <xbl@rock-chips.com>
6 years agodrm/edid: improve cea_db_offsets compatibility
Zheng Yang [Mon, 24 Jul 2017 03:51:22 +0000 (11:51 +0800)]
drm/edid: improve cea_db_offsets compatibility

The cea[2] is equal to the real value minus one in some sink edid,
found on a Konka LCD TV. the last data block offset plus the payload
length is equal to cea[2]. The end value need to plus one under this
scene.

Change-Id: I41b477559023ccd1cc4a5450dd9d35bed095f147
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3399-evb: enable dmc and dfi
Finley Xiao [Tue, 18 Jul 2017 06:33:41 +0000 (14:33 +0800)]
arm64: dts: rockchip: rk3399-evb: enable dmc and dfi

Change-Id: If372c3b73ce419c3ea31143e7318529f2e9c9e56
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agoARM: dts: rk3288-android: edp connect to vopb by default
xubilv [Mon, 24 Jul 2017 02:03:06 +0000 (10:03 +0800)]
ARM: dts: rk3288-android: edp connect to vopb by default

Change-Id: Id392ba8052eb67c544f3528c9b89a5f444fa4c36
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: backlight: fix null pointer error
Mark Yao [Mon, 24 Jul 2017 01:47:19 +0000 (09:47 +0800)]
drm/rockchip: backlight: fix null pointer error

drm backlight maybe not enabled, the private->backlight
can be null pointer.

[    1.842225] PC is at rockchip_drm_backlight_update+0x14/0xd0
[    1.842733] LR is at rockchip_atomic_commit_complete+0x34/0x70
[    2.012457] [<ffffff800849cb70>] rockchip_drm_backlight_update+0x14/0xd0
[    2.013057] [<ffffff800849f5c8>] rockchip_atomic_commit_complete+0x34/0x70
[    2.013666] [<ffffff800849f680>] rockchip_drm_atomic_commit+0x7c/0x9c
[    2.014244] [<ffffff800848c510>] drm_atomic_commit+0x64/0x70
[    2.014747] [<ffffff800849ed64>] show_loader_logo+0x83c/0x944
[    2.015260] [<ffffff800849f1f4>] rockchip_drm_bind+0x388/0x418
[    2.015783] [<ffffff800850dbf4>] try_to_bring_up_master.part.3+0xac/0x114
[    2.016390] [<ffffff800850dd24>] component_master_add_with_match+0xc8/0x124
[    2.017010] [<ffffff800849e008>] rockchip_drm_platform_probe+0x208/0x238
[    2.017609] [<ffffff8008514898>] platform_drv_probe+0x58/0xa4
[    2.018123] [<ffffff8008512b38>] driver_probe_device+0x118/0x2ac
[    2.018656] [<ffffff8008512e18>] __device_attach_driver+0x88/0x98
[    2.019200] [<ffffff8008510f40>] bus_for_each_drv+0x7c/0xac
[    2.019702] [<ffffff800851296c>] __device_attach+0xa4/0x124
[    2.020204] [<ffffff8008512f84>] device_initial_probe+0x10/0x18
[    2.020737] [<ffffff8008511fc4>] bus_probe_device+0x2c/0x8c
[    2.021238] [<ffffff8008512440>] deferred_probe_work_func+0x74/0xa0
[    2.021795] [<ffffff80080b715c>] process_one_work+0x218/0x3e0
[    2.022307] [<ffffff80080b7b5c>] worker_thread+0x2e8/0x404
[    2.022797] [<ffffff80080bc4a0>] kthread+0xf8/0x100
[    2.023235] [<ffffff8008082840>] ret_from_fork+0x10/0x50

Change-Id: Ib77e871402dfcb1276befa274fc3cf43b017d879
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agopinctrl: rockchip: Add rk3128 pinctrl support
David Wu [Thu, 20 Jul 2017 12:37:32 +0000 (20:37 +0800)]
pinctrl: rockchip: Add rk3128 pinctrl support

There are 3 IP blocks pin routes need to be switched, that are
emmc-cmd, spi, i2s. And there are some pins need to be recalced,
which are gpio2c4~gpio2c7 and gpio2d0.

Change-Id: I1152a2ac4e179ed839d02a3f18ccef5ded849312
Signed-off-by: David Wu <david.wu@rock-chips.com>
6 years agopinctrl: rockchip: Use common interface for recalced iomux
David Wu [Thu, 20 Jul 2017 12:04:52 +0000 (20:04 +0800)]
pinctrl: rockchip: Use common interface for recalced iomux

The other Socs also need the feature of recalced iomux, so
make it as a common interface like iomux route feature.

Change-Id: I8a58ae0af5edd497a545d3734d99c22bed177a43
Signed-off-by: David Wu <david.wu@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3366: enable power domain
Finley Xiao [Fri, 21 Jul 2017 07:22:52 +0000 (15:22 +0800)]
arm64: dts: rockchip: rk3366: enable power domain

Change-Id: I5c4e48f29fd9aaab72e74c0de3aa840f9990b8e2
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agosoc: rockchip: power-domain: vpu and rkvdec ignore idle request for rk3366
Finley Xiao [Fri, 21 Jul 2017 07:50:46 +0000 (15:50 +0800)]
soc: rockchip: power-domain: vpu and rkvdec ignore idle request for rk3366

As vpu and rkvdec use the common idle request, if vpu enable idle request
and rkvdec is working, the rkvdec will be crash, so let them both don't
do idle request.

Change-Id: I1fe2bc99c81d3b2018e86896548514e5e8093a4a
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
6 years agoiommu/rockchip: Fix runtime status unsupported
Elaine Zhang [Fri, 21 Jul 2017 08:46:19 +0000 (16:46 +0800)]
iommu/rockchip: Fix runtime status unsupported

Change-Id: Ief14da568aa641470a3a22d011739f474b9ed1ad
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
6 years agoarm64: rockchip_linux_defconfig: add chinese display support
Binyuan Lan [Thu, 20 Jul 2017 15:29:04 +0000 (23:29 +0800)]
arm64: rockchip_linux_defconfig: add chinese display support

Change-Id: I31002a63a38fa46fb0f170222b0ddceeaf27427c
Signed-off-by: Binyuan Lan <lby@rock-chips.com>
6 years agoarm64: dts: rockchip: rk3366: Add hdmi node
WeiYong Bi [Wed, 19 Jul 2017 06:56:22 +0000 (14:56 +0800)]
arm64: dts: rockchip: rk3366: Add hdmi node

Change-Id: I99b95a9fd3e70c70b6066729dd4213f8beb33e19
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
6 years agoarm64: dts: rk3399-sapphire-excavator-linux: add camera node
zhoupeng [Thu, 20 Jul 2017 07:26:28 +0000 (15:26 +0800)]
arm64: dts: rk3399-sapphire-excavator-linux: add camera node

dts: support tc358749xbg for HDMI IN

Change-Id: I5a5874d08ea13c27cac7b3507a46bb1f2288e3f4
Signed-off-by: zhoupeng <benjo.zhou@rock-chips.com>
6 years agomedia: soc_camera: add tc358749xgb sensor driver
zhoupeng [Thu, 20 Jul 2017 07:49:59 +0000 (15:49 +0800)]
media: soc_camera: add tc358749xgb sensor driver

Change-Id: I66ccb856cb2689bf26a8a12069b29c7ec6dae6f0
Signed-off-by: zhoupeng <benjo.zhou@rock-chips.com>
6 years agoMALI: utgard: fix the too small "max_job_runtime" in platform information
chenzhen [Tue, 11 Jul 2017 07:01:20 +0000 (15:01 +0800)]
MALI: utgard: fix the too small "max_job_runtime" in platform information

The original setting of "max_job_runtime" is too small
that jobs are too easy to timeout and be killed.

Change-Id: I5316c2b594d94dd0b844ef9a297baa7b226c4665
Signed-off-by: chenzhen <chenzhen@rock-chips.com>
6 years agoARM: dts: rockchip: rk3368-sheep add vsel gpio for syr827
Jianqun Xu [Fri, 21 Jul 2017 06:22:12 +0000 (14:22 +0800)]
ARM: dts: rockchip: rk3368-sheep add vsel gpio for syr827

Add vsel gpio for syr827, which is PMIC_SLEEP in hardware pcb.

The driver will parse the gpio and use it to indicate the chip
work status, as the following codes:

static int fan53555_is_enabled ()
if defined vsel_gpio
gpiod_get_raw_value
else
regmap_read

Before the patch, the log shows:
CPU4: update cpu_capacity 1024
CPU4: Booted secondary processor [410fd033]
  cache: parent cpu4 should not be sleeping
rk3x-i2c ff650000.i2c: timeout, ipd: 0x10, state: 1

Since cpu4 is the base core for cluster1, which need to initialize
cpufreq during boot up, finally call fan53555_is_enabled. But the
i2c is suspended at that time, can't get interrupt until timeout.

Change-Id: I301e95be3b60d2faa456759d88c06cf64c2019ca
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
6 years agoARM: dts: rockchip: rk3368-p9: add vsel gpio for syr827
Jianqun Xu [Fri, 21 Jul 2017 06:36:13 +0000 (14:36 +0800)]
ARM: dts: rockchip: rk3368-p9: add vsel gpio for syr827

Change-Id: I847334e0588659e5950b01a4e40bf0a24f5646bf
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
6 years agodrm/rockchip: vop: don't force enable post scale
Mark Yao [Thu, 20 Jul 2017 10:57:40 +0000 (18:57 +0800)]
drm/rockchip: vop: don't force enable post scale

Vop would always report post buf empty error if enable
post scale config with non-scale factor

Change-Id: Ibc3f27c674195e6467471069488f14471927f709
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: vop: add error irq handle
Mark Yao [Thu, 25 May 2017 01:40:34 +0000 (09:40 +0800)]
drm/rockchip: vop: add error irq handle

Change-Id: I84a3bc5c9798bbd4e0b11bc499f4df5ca1907cb7
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agodrm/rockchip: support backlight device
Mark Yao [Thu, 6 Jul 2017 08:02:16 +0000 (16:02 +0800)]
drm/rockchip: support backlight device

Change-Id: Ib793b0dec8fe62027ca8e3085089d2e431b59eb5
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
6 years agophy: rockchip-inno-usb2: delay suspending phy if plug out device
William Wu [Thu, 20 Jul 2017 07:02:02 +0000 (15:02 +0800)]
phy: rockchip-inno-usb2: delay suspending phy if plug out device

The otg_sm_work will suspend the usb2 phy immediately
if it detects disconnection from host. However, the usb2
controller(e.g. DWC2) may need to reinit registers and
reset usb core after usb disconnect, and it needs to
keep the usb2 phy stay in power on state to get utmi clk
for these usb controller operation. We don't have a good
synchronization mechanism to operate usb2 phy between
usb2 phy driver and usb2 controller driver, so we delay
4s to suspend phy if detect otg device disconnect from
host, this can make sure that usb2 controller completes
reinitialization before suspend usb2 phy.

Change-Id: I79288b8c7b141bb16e6d96d80cfee75f7558d2c0
Signed-off-by: William Wu <william.wu@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: don't enable PHY PLL until it's configured
xubilv [Tue, 18 Jul 2017 03:46:48 +0000 (11:46 +0800)]
drm/rockchip: dw-mipi-dsi: don't enable PHY PLL until it's configured

Change-Id: Id28702ac62030b112dc57e4c3fc5b91cd1421a3f
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: use positive check for N{H, V}SYNC
xubilv [Tue, 18 Jul 2017 03:38:16 +0000 (11:38 +0800)]
drm/rockchip: dw-mipi-dsi: use positive check for N{H, V}SYNC

This matches other drivers.

Change-Id: I1e5773b926c274e99ea117a2a0fdc5ab096c49aa
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: fix escape clock rate
xubilv [Tue, 18 Jul 2017 03:24:39 +0000 (11:24 +0800)]
drm/rockchip: dw-mipi-dsi: fix escape clock rate

Use the same calculation as the vendor kernel to derive the escape clock
speed.

Change-Id: I7aff4dc7fa9598df164148eaf44304caad704f23
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: only request HS clock when required
xubilv [Tue, 18 Jul 2017 02:29:17 +0000 (10:29 +0800)]
drm/rockchip: dw-mipi-dsi: only request HS clock when required

Requesting the HS clock from the PHY before we initialize it causes an
invalid signal to be sent out since the input clock is not yet
configured.  The PHY databook suggests only asserting this signal when
performing HS transfers, so let's do that.

Change-Id: I7006f81d8c620dc84e84f99383c7b5414d6ac12d
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_get_hcomponent_lbcc function
xubilv [Mon, 17 Jul 2017 10:05:48 +0000 (18:05 +0800)]
drm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_get_hcomponent_lbcc function

Use the common interface to calculate

Change-Id: I21836061d1442048efaba3b2930811b8a0aab0aa
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: support read lane-rate from dts
xubilv [Mon, 17 Jul 2017 09:54:43 +0000 (17:54 +0800)]
drm/rockchip: dw-mipi-dsi: support read lane-rate from dts

It is convenient for the client to manually adjust
the value of lane rate.

Change-Id: Ic6d8c4d235eacc8cb7540d172bd69c29c2b277dd
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: analyze the platform parameters in the probe function
xubilv [Mon, 17 Jul 2017 08:24:22 +0000 (16:24 +0800)]
drm/rockchip: dw-mipi-dsi: analyze the platform parameters in the probe function

The analysis of platform parameters Only need to do it once,
if this in bind function, when return -EPROBE_DEFER,
it will be executed more than once.

Change-Id: I508021f930d39e1b79e1421c4262b9e7ab501b6c
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_video_mode_config function
xubilv [Fri, 14 Jul 2017 09:40:28 +0000 (17:40 +0800)]
drm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_video_mode_config function

Change-Id: Id11053734b1c35dc77028f2ac537bd39c096da7d
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: add mode_flags as a judgment condition
xubilv [Fri, 14 Jul 2017 08:59:13 +0000 (16:59 +0800)]
drm/rockchip: dw-mipi-dsi: add mode_flags as a judgment condition

This flag is used as a condition for the register configuration

Change-Id: I6741063b106ae00f4f1a690abde79d76bc529e95
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_set_mode function
xubilv [Fri, 14 Jul 2017 08:48:48 +0000 (16:48 +0800)]
drm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_set_mode function

Change-Id: I4ba2a1519c1e5ac485a4d7416c0066ad8ce6527a
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_encoder_disable function
xubilv [Fri, 14 Jul 2017 08:27:15 +0000 (16:27 +0800)]
drm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_encoder_disable function

Change-Id: I4c5ba54748bd1965a9f2cdea924efa6d449677a1
Signed-off-by: xubilv <xbl@rock-chips.com>
6 years agodrm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_host_transfer function
xubilv [Fri, 14 Jul 2017 07:45:25 +0000 (15:45 +0800)]
drm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_host_transfer function

Change-Id: I2a9bf2f21950f9fffc89d244308d6270663d5ef2
Signed-off-by: xubilv <xbl@rock-chips.com>