Commit Graph

608170 Commits

Author SHA1 Message Date
Huibin Hong
2f376305b7 arm64: dts: rockchip: Remove pinctrl from rk3308 fiq debugger
Change-Id: I8933a66fc1a33780a87cd97b17448e87287add7d
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-03-28 11:01:00 +08:00
Tao Huang
197a2d322a soc: rockchip: opp_select: add missing rcu lock
===============================
[ INFO: suspicious RCU usage. ]
4.4.120 #194 Not tainted
-------------------------------
drivers/base/power/opp/core.c:453 Missing rcu_read_lock() or opp_table_lock protection!

other info that might help us debug this:

rcu_scheduler_active = 1, debug_locks = 1
3 locks held by swapper/0/1:
 #0:  (&dev->mutex){......}, at: [<ffffff80082bf1e0>] __device_attach+0x28/0x104
 #1:  (cpu_hotplug.lock){++++++}, at: [<ffffff800809aac0>] get_online_cpus+0x38/0x9c
 #2:  (subsys mutex#6){+.+.+.}, at: [<ffffff80082be46c>] subsys_interface_register+0x38/0xc4

stack backtrace:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.4.120 #194
Hardware name: Rockchip RK3308 evb digital-pdm mic board (DT)
Call trace:
[<ffffff8008087f08>] dump_backtrace+0x0/0x1b8
[<ffffff80080880d4>] show_stack+0x14/0x1c
[<ffffff800820ac14>] dump_stack+0xa8/0xe8
[<ffffff80080d82d8>] lockdep_rcu_suspicious+0xe4/0x10c
[<ffffff80082ce72c>] dev_pm_opp_find_freq_ceil+0x6c/0x108
[<ffffff800824d84c>] rockchip_adjust_opp_by_irdrop+0xf4/0x1e8
[<ffffff80083a66fc>] cpufreq_init+0x134/0x414
[<ffffff80083a0eec>] cpufreq_online+0x1b4/0x68c
[<ffffff80083a1464>] cpufreq_add_dev+0x3c/0x94
[<ffffff80082be4dc>] subsys_interface_register+0xa8/0xc4
[<ffffff80083a1700>] cpufreq_register_driver+0x10c/0x1a8
[<ffffff80083a6aa8>] dt_cpufreq_probe+0xcc/0xe8
[<ffffff80082c0db4>] platform_drv_probe+0x54/0xa8
[<ffffff80082bf478>] driver_probe_device+0x188/0x26c
[<ffffff80082bf694>] __device_attach_driver+0x60/0x9c
[<ffffff80082bda4c>] bus_for_each_drv+0x84/0x94
[<ffffff80082bf264>] __device_attach+0xac/0x104
[<ffffff80082bf80c>] device_initial_probe+0x10/0x18
[<ffffff80082be8e4>] bus_probe_device+0x2c/0x90
[<ffffff80082bcd48>] device_add+0x434/0x4dc
[<ffffff80082c0ad0>] platform_device_add+0xa0/0x1e4
[<ffffff80082c1520>] platform_device_register_full+0xa0/0xe0
[<ffffff800882512c>] rockchip_cpufreq_driver_init+0xb4/0x360
[<ffffff800808312c>] do_one_initcall+0xe8/0x194
[<ffffff8008810cec>] kernel_init_freeable+0x1d0/0x1d4
[<ffffff80085b8fa4>] kernel_init+0x14/0x148
[<ffffff8008082ee0>] ret_from_fork+0x10/0x30

Note: we should use dev_pm_opp_put on new kernel.

Change-Id: I39e85892f6e7994bbe4816d09e4446de5cd25cad
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-27 19:11:41 +08:00
Tao Huang
dcda0fbc05 arm64: dts: rockchip: Remove clock-frequency from rk3308 cpu timers
Change-Id: I0c63e1c5b6ba350669e27374670572e6a533a688
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-27 16:54:19 +08:00
Finley Xiao
bf586a6af7 clk: rockchip: rk3308: Change pll type to pll_rk3328
The clk_rtc32k is unused for pll on rk3308 and it will
increase the time to change armclk rate.

Change-Id: I4c1afd04693dafb97c5119de012884c997f596ae
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-03-27 16:53:37 +08:00
Xinhuang Li
5f67055561 ASoC: codecs: rk3228: add capture support
Change-Id: Ibad275ec17389885007df1d67fb63e34f794b023
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
2018-03-27 14:43:40 +08:00
Xing Zheng
66a10e3037 ASoC: rk3308_codec: fix the incorrect dapm controls
For more clarity, this patch rename channel to group,
and, we can use the amixer or tinymix to change
the gains for ADCs (MIC/ALC/AGC) and DACs.

Change-Id: If362319fee7e926d235e8c0ffce5415027add96d
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2018-03-27 14:09:40 +08:00
Xing Zheng
033990b5c1 arm64: dts: rockchip: using simple-card for rk3308 amic evb v10
Change-Id: Ieef59251f8a49415b780b93ba6f64fcf246f6c83
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2018-03-27 14:09:40 +08:00
Xing Zheng
0ff7d089be arm64: dts: rk3308: add the mclk tx/rx and interrupt for acodec
Change-Id: Id80a51668e04ba1c783ae874085600cc058789e5
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2018-03-27 14:09:40 +08:00
Xing Zheng
5f27110ba7 ASoC: codecs: update rk3308 codec driver
This patch supports work internal codec on RK3308 EVB.
The functions status are:

DAC HEADPHONE 2CH -- OK
DAC SPK 2CH -- OK
ADC AMIC 8CH -- OK
ADC AMIC 8CH LOOPBACK -- OK
ADC AMIC 2CH -- OK
ADC LINEIN 2CH -- OK

Change-Id: I4f9ba3160b88e8c1e15980cf2eec7a1a5a25e7e7
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2018-03-27 14:09:40 +08:00
Jung Zhao
e8db05ade5 video: rockchip: vpu: add strict cond for vpu_reset
vpu_reset inside try_set_reg must be called after run to done.

Change-Id: Ide396d5c893cfeeea2e6494edc9cd5fd1130974f
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
2018-03-27 14:06:01 +08:00
Jung Zhao
1031912b1b arm: dts: rockchip: rk322x: add irq_enc for vpu_service
Change-Id: I9d003c8c864b5602e53ebe37902acd725ed5725f
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
2018-03-27 14:05:51 +08:00
Zorro Liu
923d3975c8 drivers: input: sensor: correct accel sensor kxtj9 report value
Change-Id: I9eaaaa22a105986955bb7037c8380e7778ddf507
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2018-03-27 11:55:38 +08:00
Binyuan Lan
7482a49a2d ASoC: rockchip: i2s: protect I2S_XFER_TXS/I2S_XFER_RXS with spin lock
fix bug error log: "rockchip-i2s ff070000.i2s: fail to clear".
When the TX/RX have started, can not do 'clear operation'.

Change-Id: Ia156144490a61f4fa9823b1313588e44688f4bce
Signed-off-by: Binyuan Lan <lby@rock-chips.com>
2018-03-27 09:21:42 +08:00
Rocky Hao
7c4f5712a0 arm64: dts: rockchip: enable tsadc module for rk3308-evb-10 board
Change-Id: I8e8f0c47c9b68f6c6afb873c5efc11b97eccd403
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2018-03-26 20:29:24 +08:00
Rocky Hao
47f32937bd arm64: rk3308_linux_defconfig: enable ROCKCHIP_THERMAL
Change-Id: Ia05592f828b87c6e3ed63491b31f03cf31483782
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2018-03-26 20:29:24 +08:00
William Wu
61afbad657 phy: rockchip-inno-usb2: fix a clang warning
This patch fix the following clang warning:
[clang] drivers/phy/rockchip/phy-rockchip-inno-usb2.c:1458:2:
warning: 3rd function call argument is an uninitialized value

Change-Id: Ia4a556da346323e5bc081ff1bbf267911fcdc645
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-03-26 20:12:52 +08:00
William Wu
893c85ad32 phy: rockchip-inno-usb2: open pre-emphasize for rk3308/rk3328
Open pre-emphasize in non-chirp state for rk3308 and
rk3328 usb otg and host ports to increase HS slew rate.

Change-Id: I16435d67b9994cef0fd5e6edbae00c41cc02c48b
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-03-26 20:09:02 +08:00
Zhen Chen
b1ee4d8307 MALI: rockchip: upgrade bifrost DDK to r11p0-01rel0
in addition,
	resolve all the conflicts;
	rename all the configs and macros that have a same name in midgard/;

Change-Id: I93a7cf42301a3af43d593965a3eac7fc2aa8276c
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
2018-03-26 16:32:38 +08:00
Sandy Huang
f948a62d1d drm/rockchip: rk312x vop: add dither config
Change-Id: Ide4fe3d269bbea919d469db91ac83a696988932c
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2018-03-26 14:29:49 +08:00
Joseph Chen
7c79ab50ae mfd: rk808: provide a dummy callback for pm_power_off
RK8xx PMICs would do real power off in syscore shutdown, if "pm_power_off"
is not assigned(e.g. PSCI is not enabled), we have to provide a dummy
callback for it, otherwise there comes a halt in Reboot system call:

if ((cmd == LINUX_REBOOT_CMD_POWER_OFF) && !pm_power_off)
	cmd = LINUX_REBOOT_CMD_HALT;

This patch fix issue from:
	94a7fc2 mfd: rk808: power off system in syscore shutdown

Change-Id: I099236bbbd7fcb35fe483fb8f08936fd7a75d2db
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-26 14:25:47 +08:00
Joseph Chen
d507330027 power: rk816-battery: judge 'is_initialized' firstly
U-Boot fuel gauge may do ocv calibration which would update
rsoc, and it would lead a wrong halt judgement for kernel
fuel gauge driver. So we judege is_initialized firstly.

Change-Id: Ifed343b85d3f7e7a42545fc57efe460338f30e17
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-26 14:23:13 +08:00
Joseph Chen
53033d6deb power: rk818-battery: judge 'is_initialized' firstly
U-Boot fuel gauge may do ocv calibration which would update
rsoc, and it would lead a wrong halt judgement for kernel
fuel gauge driver. So we judege is_initialized firstly.

Change-Id: I2957c464dfde1dde4b7dd32778d373904209d575
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-26 14:23:13 +08:00
shengfei Xu
521f06b4a2 arm64: dts: rockchip: add opp-table for rk3308
Change-Id: I025416244fe9e0340a77e25edab864325d96d821
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-03-26 14:16:51 +08:00
Tao Huang
6149bcc0e3 rk: Makefile: CROSS_COMPILE use gcc-linaro-6.3.1-2017.05 if available on arm64
Change-Id: Ia51b77ffaf4a2ea2e3e73588917c0cf0ddd66d38
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-26 12:04:11 +08:00
Ziyuan Xu
1e8d61f93c arm64: dts: rockchip: add more leds for rk3308-evb-10 board
Change-Id: I311bfe33c27b6e4288b306a8e88d20d5e0e26f6e
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2018-03-26 12:00:54 +08:00
Ziyuan Xu
227857f094 arm64: rk3308_linux_defconfig: enable all led trigger types
Change-Id: Icf8ec0890ab93086075c102aec7f872410ca0e86
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2018-03-26 12:00:08 +08:00
Hans Yang
7f5dc44590 arm64: rk3308_linux_defconfig: add ext2 support
Change-Id: Ia115f944a3dc7c2d0cfcac3d887da40ab18d9166
Signed-off-by: Hans Yang <yhx@rock-chips.com>
2018-03-26 11:58:54 +08:00
Sugar Zhang
3e0e97ab40 arm64: configs: rk3308_linux_defconfig: enable SND_PROC_FS
Change-Id: I8c55107df5ec417103deb7d6ab849120be2524b1
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Sugar Zhang
df6f5aee54 arm64: dts: rk3308-evb-dmic-i2s: add i2s digital mic array sound
Change-Id: If1d0d4325a2369da0ecf471a58b982c8a00f7f28
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Sugar Zhang
d6f06e3c43 arm64: configs: rk3308: enable dummy codec and multicodec sound
Change-Id: I4385f2a5cf3ebb5b0b7a89835ce24c14cbb96831
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Sugar Zhang
ea2d29073a ASoC: rockchip: add support for multicodecs sound
Change-Id: I77d3e9c10d03c2b8809c6d82b5268dba279ee6f0
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Sugar Zhang
ecf08a4208 ASoC: codec: add dummy codec for rockchip
Change-Id: I86cb74994d49178525e15b61b5056fd3995e904d
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Sugar Zhang
4519e31162 arm64: dts: rockchip: add i2s, pdm for rk3308
Change-Id: I9fdc000223ad2f5dbf69e31d67a5bc7b3bc4467d
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Sugar Zhang
ee0c8242d3 arm64: configs: enable i2s/tdm for rockchip defconfig
Change-Id: If8b4935dab761330693e11d24fb8197acbe97b08
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Sugar Zhang
018d1c86c1 ASoC: rockchip: add support for rockchip i2s/tdm controller
This patch is add for rockchip i2s/tdm controller.

Change-Id: I428e311402220ff14441c48e13fa51356ced46e8
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-03-26 11:41:36 +08:00
Finley Xiao
0e8e8a0af4 arm64: dts: rockchip: rk3308: Add pvtm node
Change-Id: I8d31a58478281b7e16a7de2016e65ba4b8701c72
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-03-26 11:35:49 +08:00
Finley Xiao
9717a092c0 soc: rockchip: pvtm: Add support for RK3308 SoCs
This adds the necessary data for handling pvtm on the rk3308.

Change-Id: I54860da4aeea2c4c05fec717d73152a69d30a24f
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-03-26 11:35:49 +08:00
Shawn Lin
29b6b16557 BACKPORT: FROMLIST: clk: rockchip: Fix wrong parent for SDMMC phase clock for rk3228
commit c420c1e4db ("clk: rockchip: Prevent calculating mmc phase
if clock rate is zero") catches one gremlin again for clk-rk3228.c
that the parent of SDMMC phase clock should be sclk_sdmmc0, but not
sclk_sdmmc. However, I don't like the name of sclk_sdmmc0, so I now
rename it to be sclk_sdmmc.

Change-Id: I1cf16aa1c639ce4776347b40a36bde241c800c03
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
(cherry-picked from https://patchwork.kernel.org/patch/10298427/)
2018-03-26 11:28:19 +08:00
Shawn Lin
a4b0a0f6bf BACKPORT: FROMLIST: clk: rockchip: Fix wrong parents for MMC phase clock for rk3328
commit c420c1e4db ("clk: rockchip: Prevent calculating mmc phase if clock rate is zero")
catches some gremlins for clk-rk3328.c that the parents of MMC phase
clock should be clk_{sdmmc, sdio, emmc}, but not sclk_{sdmmc, sdio,
emmc}.

Change-Id: I714d031e33dcbed120bd5c9c514f7a1d65446c18
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
(cherry-picked from https://patchwork.kernel.org/patch/10298425/)
2018-03-26 11:28:08 +08:00
Tao Huang
22b4d8d8a3 arm64: rk3308_linux_defconfig: remove px30 support
remove RK817/MIPI/CPU_PX30

Change-Id: I0ca1f705f9f5ce3ea5128728fb487f6aead9a905
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-24 17:20:33 +08:00
Tao Huang
9db9be8132 arm64: dts: rockchip: fix rktimer irq for px30
Fixes: fd769fde5b ("arm64: dts: px30: support cpu/cluster idle")
Change-Id: I1e95e21fa0304fe87ef7adba238e41294c5429cb
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-24 17:06:32 +08:00
Ziyuan Xu
35c7123582 arm64: dts: rockchip: fixup bluetooth configuration
The clk_rtc_32k is used as crystal input for wifi & bt device on
rk3308-evb-v10 board, and it should be always enabled.

Reivse the "BT,reset-gpio" to "BT,power-gpio" which the original is not
correspond to BT_REG_ON.

Change-Id: I210e5386d93fdd3004f483ab877e590f42e7ef83
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2018-03-24 17:04:33 +08:00
Huibin Hong
0428676935 arm64: dts: rockchip: reference fiq debugger for rk3308-evb-rev1 board
Change-Id: I665233589518a2640777303c71189e3f376d3b1f
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-03-24 16:56:02 +08:00
Huibin Hong
67afe18758 arm64: dts: rockchip: reference fiq debugger node for rk3308 fpga
Change-Id: Ib6fd9d2af2839e0806c6039da964ffc235d4ac9b
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-03-24 16:54:30 +08:00
Huibin Hong
1fa1133991 arm64: dts: rockchip: Add fiq debugger node for rk3308
Change-Id: Ie64336bd0046c1a5619e243775ed6807b0568118
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-03-24 16:52:14 +08:00
Huibin Hong
157f450809 arm64: dts: rockchip: fix dmac interrupts config for rk3308
Change-Id: I31efa00bbfd231720893b12cb1c2404714a1d1af
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-03-24 16:51:03 +08:00
Tao Huang
ed4c28dc89 drm/panel: simple: Fix compile error when !DRM_MIPI_DSI
Change-Id: I962f7d3f004242fe5197979a84dcf3c27a944ece
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-03-24 16:37:42 +08:00
David Wu
af77467329 arm64: dts: rockchip: Add rtc_32k support for rk3308-evb
Change-Id: Ia8bfa8fae701bdd6a90bcc108959cdd49d122b76
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-03-24 15:31:31 +08:00
David Wu
8261df3812 pinctrl: rockchip: Add rtc 32k io route data for rk3308
If rtc_32k pin iomux is enabled, the grf_rtc_32k_ioe
needs to be enabled also.

Change-Id: I24d04c09b1190aa0cd323231c2f2e27ae900d200
Signed-off-by: David Wu <david.wu@rock-chips.com>
2018-03-24 15:31:26 +08:00
Finley Xiao
ea09cfaa51 arm64: dts: rockchip: rk3308: Assign clk_rtc32k to 32768Hz
Change-Id: I2d6e06cc8e397dc9da5037458aa518dadc11fe01
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-03-24 15:31:14 +08:00