Commit Graph

613250 Commits

Author SHA1 Message Date
Tao Huang
29f42eb299 ARM: rk3308_linux_aarch32_debug_defconfig: enable CRYPTO_LZ4
Keep support lz4 compression for zram

Fixes: 30a850bbf1 ("UPSTREAM: zram: delete custom lzo/lz4")
Change-Id: I0f2bd3404b2532ead9340ee6bf4ad66fc0309ba2
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-11 14:36:45 +08:00
Tao Huang
5e2493f821 ARM: rk3308_linux_aarch32_defconfig: enable CRYPTO_LZ4
Keep support lz4 compression for zram

Fixes: 30a850bbf1 ("UPSTREAM: zram: delete custom lzo/lz4")
Change-Id: I79170f53ab92d17586af9226e4472e20f6894ee5
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-11 14:36:45 +08:00
Wyon Bi
b0c9700602 drm/bridge: analogix_dp: remove dead codes
Change-Id: I8ec07028d911d48756fd5ce59ca4fd6e544230b5
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2018-10-11 14:13:47 +08:00
Wyon Bi
289059c61b drm/bridge: analogix_dp: rework hpd gpio detection
Change-Id: I0d62201095ab82f5ed0ddcfd53abaef6089a2e9d
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2018-10-11 14:13:07 +08:00
Tao Huang
828b971fb0 soc: rockchip: remove default y for CPU_RK3366
Change-Id: Idfca39cc6261c951b87a50366334e6cda2aafa63
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-11 14:08:53 +08:00
Wyon Bi
357b22cca8 drm/bridge: analogix_dp: Fix AUX CH not work properly when disabled the rockchip logo
Fixes: 44f714e435 (drm/analogix: dp: remove some function which cause loader logo flash)
Change-Id: Ia4d999ce4287e75fd23c4920e1b4e07e7004f4aa
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2018-10-11 12:13:59 +08:00
Wyon Bi
e82ecb98b4 drm/bridge: analogix_dp: Fix unbalanced phy_power_on
Change-Id: I25b6967f651e2eab9a10029f4b241b8ed8d50b59
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2018-10-11 12:13:45 +08:00
Wyon Bi
77ec03b5af drm/rockchip: edp: Fix unbalanced power status
Change-Id: I85f2c9b051a0933a13a709ad8eb27bc2c4a2b990
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2018-10-11 12:13:14 +08:00
Lin Huang
0ab00aeb46 UPSTREAM: drm/bridge: analogix_dp: Move enable video into config_video()
We need to enable video before analogix_dp_is_video_stream_on(), so
we can get the right video stream status.

We needed to increase the delay in the timeout loop because there is
random "Timeout of video streamclk ok" message happen when debug edp
panel, this time do not define in the spec.

Cc: 征增 王 <wzz@rock-chips.com>
Cc: Stéphane Marchesin <marcheu@chromium.org>
Signed-off-by: Lin Huang <hl@rock-chips.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Thierry Escande <thierry.escande@collabora.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180423105003.9004-2-enric.balletbo@collabora.com

Change-Id: I46ed11886a0e82a7d61bdb968ff1ea357a662d0a
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 93cba9dab1)
2018-10-11 12:11:58 +08:00
Sylwester Nawrocki
836ec984e2 UPSTREAM: drm/bridge: analogix: Remove unreachable code from analogic_dp_core.c
This patch removes an unreachable code found by the SVACE static
analysis:

UNREACHABLE_CODE: This statement in the source code might be unreachable
during program execution.
[unreachable] unreachable at drivers/gpu/drm/bridge/analogix/analogix_dp_core.c:787
retval != 0 is always false because at this program point the variable retval
is always equal to 0 at drivers/gpu/drm/bridge/analogix/analogix_dp_core.c:786

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20171212112037.13107-1-s.nawrocki@samsung.com

Change-Id: Ia96459ce8bdd5062f7c51921837462c84586d0cf
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit c4712f27be)
2018-10-11 12:11:58 +08:00
Wyon Bi
cdda59cd03 Revert "drm: bridge: analogix: Avoid timeout warnings in analogix_dp_config_video()"
This reverts commit dd25e35e08.

Change-Id: Id3f886bdfeddf26626087c67cafe263c01ce372d
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2018-10-11 12:11:58 +08:00
Marek Szyprowski
2bbddaf948 BACKPORT: drm/bridge: analogix_dp: Postpone enabling runtime power management
Enabling runtime power management early in analogix_dp_bind() causes following
kernel NULL pointer dereference:

Unable to handle kernel NULL pointer dereference at virtual address 000007d8
pgd = 28ffa2e4
[000007d8] *pgd=00000000
Internal error: Oops: 5 [#1] PREEMPT SMP ARM
Modules linked in:
CPU: 6 PID: 69 Comm: kworker/6:1 Not tainted 4.16.0-rc1-00062-ge25751974ba8 #3622
Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
Workqueue: events deferred_probe_work_func
PC is at analogix_dp_resume+0x8/0xc0
LR is at pm_generic_runtime_resume+0x2c/0x38
pc : [<c0531b98>]    lr : [<c0543fec>] psr: a0000113
sp : ee13fbd8  ip : 0000001a  fp : 00000001
r10: ee0eb080  r9 : c0552bd8  r8 : c0fb1d98
r7 : eebb1010  r6 : eeae9808  r5 : 00000000  r4 : d4850415
r3 : ee0ed010  r2 : b2d05e00  r1 : 00000000  r0 : 00000000
Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM Segment none
Control: 10c5387d  Table: 2000406a  DAC: 00000051
Process kworker/6:1 (pid: 69, stack limit = 0x913205b4)
Stack: (0xee13fbd8 to 0xee140000)
...
[<c0531b98>] (analogix_dp_resume) from [<c0543fec>] (pm_generic_runtime_resume+0x2c/0x38)
[<c0543fec>] (pm_generic_runtime_resume) from [<c054ffb4>] (__genpd_runtime_resume+0x2c/0x8c)
[<c054ffb4>] (__genpd_runtime_resume) from [<c0552d24>] (genpd_runtime_resume+0x14c/0x258)
[<c0552d24>] (genpd_runtime_resume) from [<c0547798>] (__rpm_callback+0x134/0x214)
[<c0547798>] (__rpm_callback) from [<c0547898>] (rpm_callback+0x20/0x80)
[<c0547898>] (rpm_callback) from [<c0546ff4>] (rpm_resume+0x3a0/0x734)
[<c0546ff4>] (rpm_resume) from [<c05475ec>] (__pm_runtime_resume+0x64/0x9c)
[<c05475ec>] (__pm_runtime_resume) from [<c053b95c>] (__device_attach+0x8c/0x134)
[<c053b95c>] (__device_attach) from [<c053ad08>] (bus_probe_device+0x88/0x90)
[<c053ad08>] (bus_probe_device) from [<c05390d0>] (device_add+0x3a8/0x580)
[<c05390d0>] (device_add) from [<c06764c4>] (i2c_register_adapter+0xd4/0x3ec)
[<c06764c4>] (i2c_register_adapter) from [<c05321c8>] (analogix_dp_bind+0x2a0/0x410)
[<c05321c8>] (analogix_dp_bind) from [<c0528e90>] (exynos_dp_bind+0x9c/0x12c)
[<c0528e90>] (exynos_dp_bind) from [<c0535bc4>] (component_bind_all+0xfc/0x258)
[<c0535bc4>] (component_bind_all) from [<c0522ee8>] (exynos_drm_bind+0x15c/0x28c)
[<c0522ee8>] (exynos_drm_bind) from [<c0536378>] (try_to_bring_up_master+0x1b8/0x29c)
[<c0536378>] (try_to_bring_up_master) from [<c05364fc>] (component_add+0xa0/0x170)
[<c05364fc>] (component_add) from [<c0528fe4>] (exynos_dp_probe+0x64/0xb8)
[<c0528fe4>] (exynos_dp_probe) from [<c053debc>] (platform_drv_probe+0x50/0xb0)
[<c053debc>] (platform_drv_probe) from [<c053bd18>] (driver_probe_device+0x2b8/0x4a0)
[<c053bd18>] (driver_probe_device) from [<c0539e4c>] (bus_for_each_drv+0x44/0x8c)
[<c0539e4c>] (bus_for_each_drv) from [<c053b970>] (__device_attach+0xa0/0x134)
[<c053b970>] (__device_attach) from [<c053ad08>] (bus_probe_device+0x88/0x90)
[<c053ad08>] (bus_probe_device) from [<c053b258>] (deferred_probe_work_func+0x3c/0x168)
[<c053b258>] (deferred_probe_work_func) from [<c014352c>] (process_one_work+0x1d0/0x7bc)
[<c014352c>] (process_one_work) from [<c0143b84>] (worker_thread+0x34/0x4dc)
[<c0143b84>] (worker_thread) from [<c014a30c>] (kthread+0x128/0x164)
[<c014a30c>] (kthread) from [<c01010b4>] (ret_from_fork+0x14/0x20)
Exception stack(0xee13ffb0 to 0xee13fff8)
ffa0:                                     00000000 00000000 00000000 00000000
ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
ffe0: 00000000 00000000 00000000 00000000 00000013 00000000
Code: e2800e37 eafee601 e92d4070 e1a05000 (e59067d8)
---[ end trace bf6046013df7cab2 ]---

This oops happens, because analogix_dp_bind() calls drm_dp_aux_register()
which registers i2c adapter. I2C core tries to runtime get i2c host
device during registration. This ends in analogix_dp_resume(), but dp
context is NULL there. dp context is set in exynos_dp_bind() after
executing analogix_dp_bind(). Fix this issue by postponing enabling runtime
power management after drm_dp_aux_register().

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180305085741.18896-3-m.szyprowski@samsung.com

Change-Id: I728633e4f827614c95e0cf20b1cbf48e96ec4577
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit f25c835815)
2018-10-11 12:11:58 +08:00
Marek Szyprowski
c1212cdf9f BACKPORT: drm/bridge: analogix dp: Fix runtime PM state in get_modes() callback
get_modes() callback might be called asynchronously from the DRM core and
it is not synchronized with bridge_enable(), which sets proper runtime PM
state of the main DP device. Fix this by calling pm_runtime_get_sync()
before calling drm_get_edid(), which in turn calls drm_dp_i2c_xfer() and
analogix_dp_transfer() to ensure that main DP device is runtime active
when doing any access to its registers.

This fixes the following kernel issue on Samsung Exynos5250 Snow board:
Unhandled fault: imprecise external abort (0x406) at 0x00000000
pgd = c0004000
[00000000] *pgd=00000000
Internal error: : 406 [#1] PREEMPT SMP ARM
Modules linked in:
CPU: 0 PID: 62 Comm: kworker/0:2 Not tainted 4.13.0-rc2-00364-g4a97a3da420b #3357
Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
Workqueue: events output_poll_execute
task: edc14800 task.stack: edcb2000
PC is at analogix_dp_transfer+0x15c/0x2fc
LR is at analogix_dp_transfer+0x134/0x2fc
pc : [<c0468538>]    lr : [<c0468510>]    psr: 60000013
sp : edcb3be8  ip : 0000002a  fp : 00000001
r10: 00000000  r9 : edcb3cd8  r8 : edcb3c40
r7 : 00000000  r6 : edd3b380  r5 : edd3b010  r4 : 00000064
r3 : 00000000  r2 : f0ad3000  r1 : edcb3c40  r0 : edd3b010
Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
Control: 10c5387d  Table: 4000406a  DAC: 00000051
Process kworker/0:2 (pid: 62, stack limit = 0xedcb2210)
Stack: (0xedcb3be8 to 0xedcb4000)
[<c0468538>] (analogix_dp_transfer) from [<c0424ba4>] (drm_dp_i2c_do_msg+0x8c/0x2b4)
[<c0424ba4>] (drm_dp_i2c_do_msg) from [<c0424e64>] (drm_dp_i2c_xfer+0x98/0x214)
[<c0424e64>] (drm_dp_i2c_xfer) from [<c057b2d8>] (__i2c_transfer+0x140/0x29c)
[<c057b2d8>] (__i2c_transfer) from [<c057b4a4>] (i2c_transfer+0x70/0xe4)
[<c057b4a4>] (i2c_transfer) from [<c0441de4>] (drm_do_probe_ddc_edid+0xb4/0x114)
[<c0441de4>] (drm_do_probe_ddc_edid) from [<c0441e5c>] (drm_probe_ddc+0x18/0x28)
[<c0441e5c>] (drm_probe_ddc) from [<c0445728>] (drm_get_edid+0x124/0x2d4)
[<c0445728>] (drm_get_edid) from [<c0465ea0>] (analogix_dp_get_modes+0x90/0x114)
[<c0465ea0>] (analogix_dp_get_modes) from [<c0425e8c>] (drm_helper_probe_single_connector_modes+0x198/0x68c)
[<c0425e8c>] (drm_helper_probe_single_connector_modes) from [<c04325d4>] (drm_setup_crtcs+0x1b4/0xd18)
[<c04325d4>] (drm_setup_crtcs) from [<c04344a8>] (drm_fb_helper_hotplug_event+0x94/0xd0)
[<c04344a8>] (drm_fb_helper_hotplug_event) from [<c0425a50>] (drm_kms_helper_hotplug_event+0x24/0x28)
[<c0425a50>] (drm_kms_helper_hotplug_event) from [<c04263ec>] (output_poll_execute+0x6c/0x174)
[<c04263ec>] (output_poll_execute) from [<c0136f18>] (process_one_work+0x188/0x3fc)
[<c0136f18>] (process_one_work) from [<c01371f4>] (worker_thread+0x30/0x4b8)
[<c01371f4>] (worker_thread) from [<c013daf8>] (kthread+0x128/0x164)
[<c013daf8>] (kthread) from [<c0108510>] (ret_from_fork+0x14/0x24)
Code: 0a000002 ea000009 e2544001 0a00004a (e59537c8)
---[ end trace cddc7919c79f7878 ]---

Reported-by: Misha Komarovskiy <zombah@gmail.com>
CC: stable@vger.kernel.org # v4.10+
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20171121074936.22520-1-m.szyprowski@samsung.com

Change-Id: I9f2ba9175dd0b733ddd47f601d6bd4207e831eb9
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 510353a637)
2018-10-11 12:11:58 +08:00
Jeffy Chen
cada5e5f49 UPSTREAM: drm: bridge: analogix: Destroy connector & encoder when unbinding
Normally we do this in drm_mode_config_cleanup. But:
1/ analogix dp's connector is allocated in bind, and freed after unbind.
So we need to destroy it in unbind to avoid further access.
2/ the drm bridge is attached in bind, and detached in encoder cleanup.
So we need to destroy encoder in unbind.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1491481885-13775-5-git-send-email-jeffy.chen@rock-chips.com

Change-Id: I0941dd1b02e0d55775f3d6d888c7591f1f478e4d
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 37e0487788)
2018-10-11 12:11:58 +08:00
Jeffy Chen
49ae4e4a2d UPSTREAM: drm: bridge: analogix: Disable clock when unbinding
The clock is enabled when binding analogix dp.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1491481885-13775-4-git-send-email-jeffy.chen@rock-chips.com

Change-Id: I6b62b38646499d2e66f02e4547dec4b8acad04f4
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit ede2fdf677)
2018-10-11 12:11:58 +08:00
Jeffy Chen
0442dd8d15 UPSTREAM: drm: bridge: analogix: Unregister dp aux when unbinding
The dp aux is registered when binding analogix dp.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1491481885-13775-3-git-send-email-jeffy.chen@rock-chips.com

Change-Id: I0f70fb0e1e9ad3e430f93980cfcdebb1afda8070
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 7b017a5816)
2018-10-11 12:11:58 +08:00
Jeffy Chen
97a243d365 UPSTREAM: drm: bridge: analogix: Detach panel when unbinding analogix dp
The panel is attached when binding analogix dp.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1491481885-13775-2-git-send-email-jeffy.chen@rock-chips.com

Change-Id: I51cae59226b9b93a496f4b705b5cb3a51e85cbc9
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 18aea7db84)
2018-10-11 12:11:58 +08:00
Baoyou Xie
519570ad4e UPSTREAM: drm: bridge: analogix/dp: mark symbols static where possible
We get 2 warnings when building kernel with W=1:
drivers/gpu/drm/bridge/analogix/analogix_dp_core.c:1053:5: warning: no previous prototype for 'analogix_dp_get_modes' [-Wmissing-prototypes]
drivers/gpu/drm/bridge/analogix/analogix_dp_core.c:1097:1: warning: no previous prototype for 'analogix_dp_detect' [-Wmissing-prototypes]

In fact, both functions are only used in the file in which they are
declared and don't need a declaration, but can be made static.
So this patch marks both functions with 'static'.

Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1474788764-6069-1-git-send-email-baoyou.xie@linaro.org

Change-Id: Idea810a90652d2f75416bcd0dd590444e1b269a8
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 089cfdd9b0)
2018-10-11 12:11:58 +08:00
Sean Paul
c9f39a454c BACKPORT: drm/bridge: analogix_dp: Don't read EDID if panel present
If there's a panel connected to the analogix_dp bridge, rely on
the panel driver for modes, rather than reading EDID *and* calling
get_modes() on the panel.

This allows panels with a valid EDID to read it in the panel driver
(e.g. simple_panel), and panels with invalid EDID to homebrew modes
in their get_modes implementation.

Signed-off-by: Sean Paul <seanpaul@chromium.org>

Change-Id: Ic144db2fedfcc10bc5b740cd6aa4f8f4e8452427
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 8c77e2c2a4)
2018-10-11 12:11:58 +08:00
Tomeu Vizoso
4c06e137d2 BACKPORT: drm/bridge: analogix_dp: Remove duplicated code
Remove code for reading the EDID and DPCD fields and use the helpers
instead.

Besides the obvious code reduction, other helpers are being added to the
core that could be used in this driver and will be good to be able to
use them instead of duplicating them.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Tested-by: Javier Martinez Canillas <javier@osg.samsung.com>
Tested-by: Sean Paul <seanpaul@chromium.org>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Cc: Javier Martinez Canillas <javier@osg.samsung.com>
Cc: Mika Kahola <mika.kahola@intel.com>
Cc: Yakir Yang <ykk@rock-chips.com>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: Archit Taneja <architt@codeaurora.org>

Change-Id: I7d1bf2f13cc68e5c89f871bada33c5b10b87a859
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 0d97ad03f4)
2018-10-11 12:11:58 +08:00
Masahiro Yamada
fdc5efe649 UPSTREAM: drm/bridge: analogix_dp: squash lines for simple wrapper functions
Remove unneeded variables and assignments.

Reviewed-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
[seanpaul added analogix prefix to subject]
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1473863952-7658-4-git-send-email-yamada.masahiro@socionext.com

Change-Id: Ia7c0e75f667ff4140719bf1b11738a0854a820da
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 03d6356d45)
2018-10-11 12:11:58 +08:00
Frank Wang
2c0460f796 ARM64: dts: rockchip: add hwlock node for rk1808
This patch adds Hardware spinlock node support for rk1808 SoC.

Change-Id: I53b3413bfca6a7310a192d029c9fe922fe48964a
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
2018-10-11 12:01:42 +08:00
Frank Wang
5237212dd7 hwspinlock: rockchip: add hardware spinlock driver
The Hardware spinlock device on Rockchip platform provides hardware
assistance for synchronization between the multiple processors in the
system.

Change-Id: Ib118dfe38c2ceb665556d5ec3aaf7be13552d2d9
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
2018-10-11 12:01:02 +08:00
Frank Wang
2b57f38056 dt-bindings: hwlock: add the rockchip hwspinlock bindings document
Add binding documentation for the Rockchip Hardware spinlock.

Change-Id: Iec1bf55196f910323a2158ecd04f31223135242d
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
2018-10-11 12:00:54 +08:00
shengfei Xu
b60783fdae arm64: dts: rockchip: rk1808-evb: the sw1 interconvert with sw2
Change-Id: I18f5b8274716d0250fd22b4fac0de82c185b0dfb
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-10-11 10:37:52 +08:00
Elaine Zhang
5b3e79f430 arm64: dts: rockchip: modify gpll freq to 1188M for rk1808
set gpll 1188M is better for cif 27M\37.125M\74.25M

Change-Id: I05003333980da535b9f20f021c38a2dbcedf74f6
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-11 09:49:17 +08:00
Elaine Zhang
c7e655d568 arm64: dts: rockchip: modify the ppll freq to 200M for rk1808
ppll set 200M is better for pcie and usb.

Change-Id: If1e14aa09e6231e7cbd5cf7d6fc8947d38a8f11a
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-11 09:47:41 +08:00
Elaine Zhang
45721e5976 clk: rockchip: rk1808: support npu half divider
Change-Id: I78d8734b96e5982e2f0dcd08cf1747ff3d8f6e21
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-11 09:47:19 +08:00
shengfei Xu
9b53e92014 arm64: configs: rk1808_linux: enable CONFIG_INPUT_RK8XX_PWRKEY
Change-Id: I86b9dea075b3242e23eb0cbd2a1a9910b4ff5f35
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-10-11 09:46:31 +08:00
Hu Kejun
79a732a593 media: rk-isp10: Fix AE information is not correct when updating exposure by each frame
Change-Id: Ibec00465ff42f2e985e9d2ec6b54bb2294830484
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-10 20:49:00 +08:00
Hu Kejun
4199db0812 media: rk-isp10: fix lose buffer in qduf ioctl
Change-Id: If1d8cf228642f08745d22856b19677164eaba980
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-10 20:48:38 +08:00
Hu Kejun
dc72529740 media: rk-isp10: fix one vb is in queue.done_list twice
vb with done state is can't added to stream.buf_queue
when another stream is started, because this vb is
in queue.done_list.

Change-Id: I7b60d6941953509e5962efae723d36b516b4185c
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-10 20:48:25 +08:00
Sandy Huang
a0028c7825 drm/rockchip: rgb: fix rgb data sync bypass config error
Change-Id: I6a7e99c232e3568b62de95293220f8219588c00f
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2018-10-10 20:47:55 +08:00
Tao Huang
2a84d6959e ARM: rockchip_defconfig: enable CRYPTO_LZ4
Keep support lz4 compression for zram

Change-Id: I9415f90c536cf9960f7dd69457d437184e6172ee
Fixes: 30a850bbf1 ("UPSTREAM: zram: delete custom lzo/lz4")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-10 20:47:29 +08:00
Tao Huang
a18dc3e071 arm64: rockchip_defconfig: enable CRYPTO_LZ4
Keep support lz4 compression for zram

Change-Id: Iceacfa9d79a1c1fe1b8ab97fe5257ad894d596b9
Fixes: 30a850bbf1 ("UPSTREAM: zram: delete custom lzo/lz4")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-10 20:04:01 +08:00
Tao Huang
d376ad8f23 Merge branch 'linux-linaro-lsk-v4.4-android' of git://git.linaro.org/kernel/linux-linaro-stable.git
* linux-linaro-lsk-v4.4-android: (1212 commits)
  ANDROID: sdcardfs: Change current->fs under lock
  ANDROID: sdcardfs: Don't use OVERRIDE_CRED macro
  ANDROID: restrict store of prefer_idle as boolean
  BACKPORT: arm/syscalls: Optimize address limit check
  UPSTREAM: syscalls: Use CHECK_DATA_CORRUPTION for addr_limit_user_check
  BACKPORT: arm64/syscalls: Check address limit on user-mode return
  BACKPORT: x86/syscalls: Check address limit on user-mode return
  BACKPORT: lkdtm: add bad USER_DS test
  UPSTREAM: bug: switch data corruption check to __must_check
  BACKPORT: lkdtm: Add tests for struct list corruption
  UPSTREAM: bug: Provide toggle for BUG on data corruption
  UPSTREAM: list: Split list_del() debug checking into separate function
  UPSTREAM: rculist: Consolidate DEBUG_LIST for list_add_rcu()
  BACKPORT: list: Split list_add() debug checking into separate function
  FROMLIST: ANDROID: binder: Add BINDER_GET_NODE_INFO_FOR_REF ioctl.
  BACKPORT: arm64/vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW
  ANDROID: arm64: mm: fix 4.4.154 merge
  BACKPORT: zsmalloc: introduce zs_huge_class_size()
  BACKPORT: zram: drop max_zpage_size and use zs_huge_class_size()
  ANDROID: tracing: fix race condition reading saved tgids
  ...

Change-Id: I9f23db35eb926b6fa0d7af7dbbb55c9a37d536fc
2018-10-10 19:37:13 +08:00
Tao Huang
90a00e3789 ARM: rockchip_defconfig: update by savedefconfig
Change-Id: I06ad15523c629920cd3851c7e8f7ee4fc1391687
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-10 19:36:25 +08:00
Tao Huang
4800ce2b29 arm64: rockchip_defconfig: update by savedefconfig
Change-Id: I8e62cee144c07b4c5910fd3124aeece4640d0df9
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-10 19:33:08 +08:00
Tao Huang
9b1d6cb325 staging: ion: rockchip: remove useless ION_IOC_GET_PHYS
Recent ION do not support ion_handle_get_by_id. So ION_IOC_GET_PHYS
is broken. Remove custom ioctl support entirely.

Change-Id: I591d4b8521a96d17cd2171c7b364e44d1b97cf24
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-10 18:50:25 +08:00
Hu Kejun
ea8f1b0e82 iommu/rockchip: add sclk
On some platform, it needs aclk/hclk/sclk for using iommu.

Change-Id: Iaf60124e225d418af8bbf1e0b4a31e907358fcfd
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
2018-10-10 16:41:03 +08:00
Finley Xiao
ebfecc19e2 arm64: dts: rockchip: Enable tsadc for rk1808-evb-v10
Change-Id: I8379e218afdbbd702e5094d96991d85cba10dd55
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-10-10 16:39:29 +08:00
Elaine Zhang
b1680c7da9 arm64: dts: rockchip: rk1808: add pinctrl for clkin/out_32k
Change-Id: I31cb6a789e43933d759c1b667f97d20cd2c97eda
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-10 16:37:39 +08:00
Elaine Zhang
54e75c20ac clk: rockchip: rk1808: add clk ID for clk_rtc32k_frac
Change-Id: Iecde141adbee536285155c64267580bde2ce5b13
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-10 11:32:20 +08:00
Finley Xiao
701dfebbed arm64: dts: rockchip: rk1808: Add opp table for cpu
Change-Id: Ie9d683c59d61a83cb1e5e7df73e56bedffa56cfd
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-10-10 10:46:50 +08:00
Tao Huang
0b9b266a6c arm64: rk1808_linux_defconfig: enable CPU_IDLE
Change-Id: I9a3b58bfa1d333575afb7b448de62fe922dfbe1f
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-10-09 20:36:49 +08:00
Bian Jin chen
f1963f7c9a arm: rockchip_defconfig: enable CONFIG_F2FS_FS_ENCRYPTION.
Android Go device require this config for performance test,
enable it by default.

Test: ./performance_test/system/checkout_f2fs.sh

Change-Id: Id5a9b33da24eec768d60e158af72dd9af216f653
Signed-off-by: Bian Jin chen <kenjc.bian@rock-chips.com>
2018-10-09 15:49:06 +08:00
Elaine Zhang
cf68108ad4 arm64: dts: rockchip: rk1808-evb: fix up the polarity for syr8xx vsel gpio
Set vsel gpio low to disable vdd_npu.
Set vsel gpio high to enable vdd_npu.
The vsel pin is pull up by hw default.

Change-Id: I86ef1f2d6d2a0dd26a128cba1e52a140e6844291
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-09 15:31:57 +08:00
Bian Jin chen
d0f8f60d0b arm64: rockchip_defconfig: enable CONFIG_F2FS_FS_ENCRYPTION.
Android Go device require this config for performance test,
enable it by default.

Test: ./performance_test/system/checkout_f2fs.sh

Change-Id: If6d07a82546759f672df8519d113a702c3bcfbe3
Signed-off-by: Bian Jin chen <kenjc.bian@rock-chips.com>
2018-10-09 15:11:30 +08:00
Finley Xiao
2e53d62c04 thermal: rockchip: Use incremental code table for rk1808
Change-Id: I2d0f379fb08eaf4a4819bc36bcb61e5ca4a50d45
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-10-09 15:02:39 +08:00
Elaine Zhang
1c450a8082 clk: rockchip: rk1808: rename SCLK_GPIO to DBCLK_GPIO
Change-Id: I1ed6fe175fb2e640a7a61e1a2e799e94e76b435f
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2018-10-09 14:59:04 +08:00