Commit Graph

595068 Commits

Author SHA1 Message Date
Huibin Hong
d1c95069b0 arm64: configs: rockchip_defconfig select fiq debugger
Change-Id: I96a45e0b580430a67c89f3b7d1bb952124928791
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2016-06-21 17:40:49 +08:00
Huibin Hong
7b42693fe1 fiq_debugger: fix code error in fiq_debugger_arm64.c
Change-Id: I6163602bf0190db85714c68086f61c89b7629687
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2016-06-21 17:40:31 +08:00
Huibin Hong
055f6518b0 soc: rockchip: add rk fiq debugger platform driver
Change-Id: Ibb32efc190ce49d657973133a30632c71f0d806c
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2016-06-21 17:40:11 +08:00
Elaine Zhang
1439310696 clk: rockchip: rk3399: add 65M for PLL freq
VPLL need 65M freq for some HDMI display.

Change-Id: I4f07c97282fb48fc504b54a07838ccb0bbb0355a
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-06-21 15:28:19 +08:00
David Wu
be05bd7727 i2c: rk3x: sync with i2c-next branch
Change-Id: Id698758616934b8816f0b8be12ea45887dc0aca9
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-06-20 18:38:19 +08:00
Sugar Zhang
be22a31f97 ARM64: dts: rk3399: add another pinctrl for spdif
rk3399 has two spdif pinctrl, product need select the one
based on the design.

Change-Id: I5c1d61dd591658b8ffd445dfb27938c8a081c058
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2016-06-20 15:10:46 +08:00
Zorro Liu
010ffe3be0 ARM64: dts: rk3399-vr: mpu6xxx: modified orientation for product and some other config
Change-Id: I389534a6994f42c4a82df2f4b2915031b3f1a6cf
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2016-06-20 15:12:20 +08:00
Aiyoujun
a51d86f390 ARM64: configs: rockchip_defconfig: enable xz3216 DCDC regulator
Change-Id: I5500acd5d1b6e3c16e03aa67086d00cc05b89108
Signed-off-by: Aiyoujun <ayj@rock-chips.com>
2016-06-20 14:53:54 +08:00
Aiyoujun
9922764300 regulator: xz3216: add driver with xz3216 series of DCDC devices to compile.
Change-Id: I5883e142c17a60cbba7e37bd4a9303efb3c867bf
Signed-off-by: Aiyoujun <ayj@rock-chips.com>
2016-06-20 14:53:39 +08:00
Zorro Liu
98827e305e driver, iio, mpuxxx: do nothing when fifo count is zero
if fifo count is zero, just wait for data ready, there is
no need to reset HW and SW fifo, or things may worse

Change-Id: Ie65cdfde9c4939be772861f5c0842fb66c384827
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2016-06-18 18:03:25 +08:00
Huang Jiachai
0497b48af6 video: rockchip: only vop big support 8x2560 linebuffer
Change-Id: Iee29c98d28375964a5af3b224350d00cb45d184d
Signed-off-by: Huang Jiachai <hjc@rock-chips.com>
2016-06-17 16:41:15 +08:00
Shawn Lin
97b2a41ea7 ARM64: dts: rk3399-evb: add keep-power-in-suspend for sdhci
We not ONLY keep card power despite of the power status of Soc,
so we should add this tag to speed up the wake.

Change-Id: I318342829cf2f5ef6d3e250c59979c156b412123
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
2016-06-17 16:40:50 +08:00
Shawn Lin
dcf9df85a8 mmc: block: Fix tag condition with packed writes
Apparently a cut-and-paste error, 'do_data_tag' is using 'brq' for data
size even though 'brq' has not been set up. Instead use blk_rq_sectors().

Change-Id: I721c02d7a937844ecedeb6c24d8439f8a9c29fef
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
2016-06-17 16:40:30 +08:00
Chen Liang
f6799e7f4a ARM64: dts: rk3399: support more frequency for evb2
RK3399 evb2 support A72 1.8G / A53 1.5G.

Change-Id: If3b034b3e2b57e1a867d99593529efc95dd51b66
Signed-off-by: Chen Liang <cl@rock-chips.com>
2016-06-17 16:40:08 +08:00
Huang Jiachai
e92346b4e5 video: rockchip: vop: 3399: restore interrupt reg config
Change-Id: I8b2c7d34ec83f437771b240f7fc8d544ae1382a0
Signed-off-by: Huang Jiachai <hjc@rock-chips.com>
2016-06-16 21:18:58 +08:00
Caesar Wang
da2473108e UPSTREAM: spi/rockchip: add the rk3036/rk3228/rk3368 to match for driver
In gerenal, the "rockchip,rockchip-spi" string will match the dts
that's great in spi driver. After all the most of rockchip SoCs ar
same spi controller.

Then, we should keep the old style to match the dts various.

Change-Id: Ib6e7b6e778e875f644a832a6c02d94bca8d60b48
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from git.kernel.org next/linux-next.git master
 commit aa29ea3df2)
2016-06-16 21:12:09 +08:00
Caesar Wang
a5478180b2 UPSTREAM: spi/rockchip: add rk3036/rk3228/rk3368 SoCs for spi document
We had supported the rk3036/rk3066/rk3188/rk3228/rk3288/rk3368/rk3399
family SoCs in linux kernel.

Let's add the other SoCs, in order to a better understanding from the
rockchip spi document.

Change-Id: If527c4356c2049a2d5bfc88ffec4cd1350f7b9be
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from git.kernel.org next/linux-next.git master
 commit 1eb1c5dc60)
2016-06-16 21:11:46 +08:00
Geert Uytterhoeven
3ed04c797e UPSTREAM: spi: rockchip: Spelling s/divsor/divisor/
Change-Id: I28ae83b204b0cb81e60bfc8927e1544466b360cb
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit bb51537aa8)
2016-06-16 20:58:25 +08:00
Shawn Lin
5edbaec586 UPSTREAM: spi: rockchip: covert rsd_nsecs to u32 type
rsd_nsecs is defined as u8 memeber of struct rockchip_spi,
but using of_property_read_u32. That means we take risk of
truncation by type conversion if we pass on big value from
dt.

Change-Id: I4d3e29b64749ac8a86782413d0f41691b9ff4e84
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit 108b5c8bba)
2016-06-16 20:58:18 +08:00
Shawn Lin
a83faa347d UPSTREAM: spi: rockchip: header file cleanup
Remove some of unused header files and reoder
it into alphabetical order.

Change-Id: Ib3ae644de08e7e6c6a77393940ceb8897c87e943
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit ec5c5d8ac0)
2016-06-16 20:58:03 +08:00
Shawn Lin
e4fd6b6c15 UPSTREAM: spi: rockchip: check requesting dma channel with EPROBE_DEFER
Let's defer probing the driver if the return value of
dma_request_slave_channel is ERR_PTR(-EPROBE_DEFER) instead
of disabling dma capability directly.

Change-Id: I8371178a772cd310df711d7d3b5fe5288be5000d
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit 61cadcf46c)
2016-06-16 20:57:48 +08:00
Shawn Lin
6c29c8fd8b UPSTREAM: spi: rockchip: migrate to dmaengine_terminate_async
dmaengine_terminate_all is deprecated, let's use
dmaengine_terminate_async for interrupt handling.

Change-Id: I8c06ef2147c0583d28eeed5b623920199efa9810
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit 557b7ea34b)
2016-06-16 20:56:53 +08:00
Shawn Lin
d6c1d4eadd UPSTREAM: spi: rockchip: check return value of dmaengine_prep_slave_sg
We should check return value of dmaengine_prep_slave_sg, otherwise
we take risk of null pointer.

Change-Id: I2cc468563d630169f314e353d835ad33091c0d3c
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit ea98491133)
2016-06-16 20:46:30 +08:00
Lars-Peter Clausen
9c66d0fd42 UPSTREAM: dmaengine: Add transfer termination synchronization support
The DMAengine API has a long standing race condition that is inherent to
the API itself. Calling dmaengine_terminate_all() is supposed to stop and
abort any pending or active transfers that have previously been submitted.
Unfortunately it is possible that this operation races against a currently
running (or with some drivers also scheduled) completion callback.

Since the API allows dmaengine_terminate_all() to be called from atomic
context as well as from within a completion callback it is not possible to
synchronize to the execution of the completion callback from within
dmaengine_terminate_all() itself.

This means that a user of the DMAengine API does not know when it is safe
to free resources used in the completion callback, which can result in a
use-after-free race condition.

This patch addresses the issue by introducing an explicit synchronization
primitive to the DMAengine API called dmaengine_synchronize().

The existing dmaengine_terminate_all() is deprecated in favor of
dmaengine_terminate_sync() and dmaengine_terminate_async(). The former
aborts all pending and active transfers and synchronizes to the current
context, meaning it will wait until all running completion callbacks have
finished. This means it is only possible to call this function from
non-atomic context. The later function does not synchronize, but can still
be used in atomic context or from within a complete callback. It has to be
followed up by dmaengine_synchronize() before a client can free the
resources used in a completion callback.

In addition to this the semantics of the device_terminate_all() callback
are slightly relaxed by this patch. It is now OK for a driver to only
schedule the termination of the active transfer, but does not necessarily
have to wait until the DMA controller has completely stopped. The driver
must ensure though that the controller has stopped and no longer accesses
any memory when the device_synchronize() callback returns.

This was in part done since most drivers do not pay attention to this
anyway at the moment and to emphasize that this needs to be done when the
device_synchronize() callback is implemented. But it also helps with
implementing support for devices where stopping the controller can require
operations that may sleep.

Change-Id: Ica0822ecbe803ec9605787e30751dfb098bdbe80
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit b36f09c3c4)
2016-06-16 20:45:35 +08:00
Alexander Kochetkov
8ec06b8708 UPSTREAM: spi/rockchip: fix endian mode for 16-bit transfers
16-bit transfers must be in big endian mode on wire.

Change-Id: I21e660de04867871132e4d5b0f2d943a30167aeb
Signed-off-by: Alexander Kochetkov <al.kochet@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit 0277e01aeb)
2016-06-16 20:40:11 +08:00
Shawn Lin
b66da51e53 UPSTREAM: spi: rockchip: remove xfer_completion from rockchip_spi
xfer_completion isn't been used anywhere, so it can be
removed.

Change-Id: I5a653609c8afaa83665ebc050274d3c9dcf59777
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit 23366a02bf)
2016-06-16 20:39:33 +08:00
Shawn Lin
1bbada4ffc UPSTREAM: spi: rockchip: add missing spi_master_put
Add missing spi_master_put for rockchip_spi_remove since
it calls spi_master_get already.

Change-Id: If76b124b5122d8ca4c65014831afdf1f4893a7cc
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit 844c9f476a)
2016-06-16 20:39:02 +08:00
Shawn Lin
5d2060410c UPSTREAM: spi: rockchip: disable runtime pm when in err case
Before registering master, driver enables runtime pm.
This patch  pm_runtime_disable in err case while probing
driver to balance pm reference count.

Change-Id: I63688e1b07b0b157a663f67e50ac74c5273ce353
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry picked from git.kernel.org next/linux-next.git master
 commit b8659adda9)
2016-06-16 20:38:34 +08:00
Shengfei xu
7afbf7d4f4 arm64: dts: rockchip: set the suspend voltage for rk3399-evb-rev2 board
Change-Id: I6e49d935b7aaa54f3a2870a477504970559da6c1
Signed-off-by: Shengfei xu <xsf@rock-chips.com>
2016-06-16 18:36:30 +08:00
Zorro Liu
445814618d driver, iio, mpuxxx: increase spi speed to 20Mhz when read sensor data
Change-Id: Ic8088d26ba87386d39014e6ca25f1b43865af914
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2016-06-16 17:59:59 +08:00
Zorro Liu
2685b36475 driver, iio, mpuxxx: add _RATE_DEBUG log
Change-Id: Iabfb6c389013fca39e023f0c9dc96882aef16d40
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2016-06-16 17:59:58 +08:00
Yakir Yang
41d5274733 FROMLIST: ARM: dts: rockchip: enable hdmi audio on rk3036-kylin
Enable the basic hdmi audio function on rk3036 kylin board.

Change-Id: Id9d0971203a75bba9a885d590c40b2ddce355b9f
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
(am from https://patchwork.kernel.org/patch/9178535/)
2016-06-16 16:00:52 +08:00
Yakir Yang
836c1fb5b7 FROMLIST: ARM: dts: rockchip: add simple sound card for RK3036 SoCs
Using I2S as the audio input source, and force the mclk_fs to 256.

Change-Id: Ib85ba7be4de430d5536aaaebe74bb9fde9174f16
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
(am from https://patchwork.kernel.org/patch/9178533/)
2016-06-16 16:00:38 +08:00
Yakir Yang
b74ea8eb39 FROMLIST: drm/rockchip: inno_hdmi: add audio support
Using the common hdmi-codec driver to support hdmi audio function.

Change-Id: I8d7f4166b8c64bc3975ad305a761e88c3404b136
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
(am from https://patchwork.kernel.org/patch/9178529/)
2016-06-16 16:00:31 +08:00
Alpha Lin
d15bc1b075 rockchip/vcodec: add shutdown ops
Add a shutdown opertion to prevent a system halt when
reboot executing.

Before this revision, driver will try to trigger hw after
power domain disable during reboot procedure, and cause a
system halt.

Change-Id: I57236c20cb96946a18d78396955f6fd59ee93a59
Signed-off-by: Alpha Lin <alpha.lin@rock-chips.com>
2016-06-16 10:26:15 +08:00
xuhuicong
8f17489c88 video: rockchip: hdmi: set hdcp hclk to modify standby crash
Change-Id: I032f85abe08932a2b14dcc71e732bd334825fed2
Signed-off-by: xuhuicong <xhc@rock-chips.com>
2016-06-16 09:48:12 +08:00
Xing Zheng
933443015f Revert "clk: rockchip: rk3399: remove GRF gates clock nodes from power domains"
This reverts commit aa197c2f23.

Change-Id: I7462950df48ea833f928c7d4d952ed65486f3acb
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-06-15 15:50:35 +08:00
Xing Zheng
5a7f245ebb Revert "clk: rockchip: rk3399: remove all of the NOC clock nodes"
This reverts commit aa4027b568.

Change-Id: I18d2dbab04fd199ac20146e48d08e3d16b0d6311
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-06-15 15:50:28 +08:00
Zhangbin Tong
ad9e650757 ARM64: rockchip_defconfig: enable pwm remote control
Change-Id: I31acaaf03a9ca6d471cf74292af7371598c301b1
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2016-06-15 15:27:38 +08:00
Zhangbin Tong
e36814cb28 input: Add IR decode driver
Change-Id: I7e6f36b70fd1f5356ad64cad9a0b9f2aab18c2b1
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2016-06-15 14:46:49 +08:00
Elaine Zhang
d25b2edaca ARM64: dts: rk3399: qos: fix up the qos node invalid format
Change-Id: I971d32c08d13b3f94da3670800d38a9229afd4d3
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-06-14 18:13:13 +08:00
Elaine Zhang
9e76a3ad71 ARM64: dts: rk3399: pd: add clk control when pd on/off
make sure the clk is enabled when read/write qos regs.

Change-Id: Ia88453504bcfd612a86537c4b12d3fd5b53f3d76
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-06-14 17:49:15 +08:00
Finley Xiao
b6b24819f5 MALI: rockchip: add power-off-delay function
As gpu power on and off frequently, and the interval time is smaller
than the polling time of devfreq, add power-off-delay function to
ensure devfreq work fine.

Change-Id: Iba2405c9ead91a437233f1fedf2f3555703aa9e1
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2016-06-14 17:35:20 +08:00
Finley Xiao
5c5729c9b2 ARM64: dts: rockchip: rk3399: add power-off-delay-ms for gpu
Change-Id: Ib050492f466b50a6937b3a43f63f27859619e3b4
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2016-06-14 17:33:48 +08:00
xubilv
f2c4a8fcb4 dtsi: screen-timing: lcd-ls055r1sx04-mipi: add screen parameter for vr
Change-Id: I035808e7758400a0c50055e959b3e1ec6b54d643
Signed-off-by: xubilv <xbl@rock-chips.com>
2016-06-14 16:01:51 +08:00
Aiyoujun
2a0df017b8 ARM64: dts: rk3399-mid-818-android: modify gt9xx touchscreen config
Change-Id: I79af9d7cb66e036424f3e6f27b1364f2c7659451
Signed-off-by: Aiyoujun <ayj@rock-chips.com>
2016-06-13 23:00:02 +08:00
Aiyoujun
7dbe44dc52 input: touchscreen: gt9xx: add firmware for rk3399 9.7' sample mid
Change-Id: Ie7c5d9ab7da284c96fe3f56fd2108445012bf25a
Signed-off-by: Aiyoujun <ayj@rock-chips.com>
2016-06-13 22:53:24 +08:00
Sugar Zhang
8bade80b78 ARM64: dts: rk3399-evb: rename spdif sound card name
just to compatiable with android sdk, anyway, change it.

Change-Id: I60341c5a8a9050172c6abaca396957442f42434e
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2016-06-13 18:42:33 +08:00
Sugar Zhang
9b9810bf44 ARM64: dts: rk3399-evb: disable spdif sound default
this patch disable spdif sound in rk3399-evb.dtsi, and enable on
product dts side as required.

Change-Id: Icf61f13aeafdfae4c7a52603ce23cf2c04c27ab4
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2016-06-13 18:35:51 +08:00
Zhiqin Wei
51e65247a4 rockchip/rga: add rga support yuv 10 bit
Change-Id: Id7bd3ea75831b671f9739337c457f59c38fde4c3
Signed-off-by: Zhiqin Wei <wzq@rock-chips.com>
2016-06-13 18:10:36 +08:00