Commit Graph

609916 Commits

Author SHA1 Message Date
Lin Jianhua
fa56b09c2e arm: dts: rockchip: rk3308-voice-module: enable sfc
Change-Id: I4ca02957fb0ba6a869fe557e6a3a9968f4ef345e
Signed-off-by: Lin Jianhua <linjh@rock-chips.com>
2018-06-29 11:53:41 +08:00
qiujian
d2fd8c7ae2 arm64: dts: rockchip: px30-android: update veritymode
androidboot.veritymode=enforcing

Change-Id: If4c99e8283324068c2574eb0831e12f4abf5b970
Signed-off-by: Jian Qiu <qiujian@rock-chips.com>
2018-06-29 10:36:13 +08:00
Lin Jianhua
11191aab84 arm: dts: rockchip: rk3308-voice-module: update key config
Change-Id: Id521af6a91f3c9f00a7cb30bd9d38b38d12c8309
Signed-off-by: Lin Jianhua <linjh@rock-chips.com>
2018-06-28 18:10:58 +08:00
Dingqiang Lin
0dd7c60c2d drivers: rkflash: update spi nand ECC strategy
1.Read ECC status according to each flash's identify Internal ECC;
2.Refresh data before reach ECC Flipping Bits.

Change-Id: Ie33850e151410cd788ff0220041d041a3d5b4f07
Signed-off-by: Dingqiang Lin <jon.lin@rock-chips.com>
2018-06-28 18:10:58 +08:00
Guochun Huang
13b165f1e2 arm64: dts: rockchip: rk3399-android: modify system and vendor path
Change-Id: Icfad366093320369c1fa8d0dd100a71a1739e088
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2018-06-28 16:37:36 +08:00
Finley Xiao
1d1456a323 soc: rockchip: opp_select: Fix sleeping inside atomic context
This patch fixes the following warning:
[    2.226264] BUG: sleeping function called from invalid context at kernel/locking/mutex.c:620
[    2.226341] in_atomic(): 0, irqs_disabled(): 0, pid: 1, name: swapper/0
[    2.226366] 4 locks held by swapper/0/1:
[    2.226385]  #0:  (&dev->mutex){......}, at: [<ffffff800851c664>] __device_attach+0x3c/0x134
[    2.226515]  #1:  (cpu_hotplug.lock){......}, at: [<ffffff800809feb0>] get_online_cpus+0x38/0x9c
[    2.226594]  #2:  (subsys mutex#7){......}, at: [<ffffff800851b0e4>] subsys_interface_register+0x54/0xfc
[    2.226684]  #3:  (rcu_read_lock){......}, at: [<ffffff800845c764>] rockchip_adjust_power_scale+0x88/0x450
[    2.226771] CPU: 3 PID: 1 Comm: swapper/0 Not tainted 4.4.132 #600
[    2.226790] Hardware name: Rockchip PX30 evb ddr3 board (DT)
[    2.226809] Call trace:
[    2.226840] [<ffffff800808a0d4>] dump_backtrace+0x0/0x1ec
[    2.226889] [<ffffff800808a2d4>] show_stack+0x14/0x1c
[    2.226918] [<ffffff80083c41b4>] dump_stack+0x94/0xbc
[    2.226946] [<ffffff80080cb708>] ___might_sleep+0x108/0x118
[    2.226972] [<ffffff80080cb788>] __might_sleep+0x70/0x80
[    2.227001] [<ffffff8008b6d1d0>] mutex_lock_nested+0x54/0x38c
[    2.227031] [<ffffff8008858714>] __of_clk_get_from_provider+0x44/0xec
[    2.227061] [<ffffff8008852814>] __of_clk_get_by_name+0xd4/0x14c
[    2.227112] [<ffffff80088528a4>] of_clk_get_by_name+0x18/0x28
[    2.227140] [<ffffff800845c980>] rockchip_adjust_power_scale+0x2a4/0x450
[    2.227171] [<ffffff800877f630>] cpufreq_init+0x154/0x394
[    2.227199] [<ffffff8008776ac4>] cpufreq_online+0x1b0/0x68c
[    2.227225] [<ffffff8008777040>] cpufreq_add_dev+0x3c/0x94
[    2.227253] [<ffffff800851b168>] subsys_interface_register+0xd8/0xfc
[    2.227281] [<ffffff80087772d8>] cpufreq_register_driver+0x10c/0x1a8
[    2.227332] [<ffffff800877f93c>] dt_cpufreq_probe+0xcc/0xe8
[    2.227360] [<ffffff800851e7b8>] platform_drv_probe+0x54/0xa8
[    2.227385] [<ffffff800851c924>] driver_probe_device+0x194/0x278
[    2.227411] [<ffffff800851cb40>] __device_attach_driver+0x60/0x9c
[    2.227439] [<ffffff800851ae14>] bus_for_each_drv+0x9c/0xbc
[    2.227464] [<ffffff800851c6f0>] __device_attach+0xc8/0x134
[    2.227488] [<ffffff800851ccb8>] device_initial_probe+0x10/0x18
[    2.227514] [<ffffff800851bcec>] bus_probe_device+0x2c/0x90
[    2.227541] [<ffffff8008519e90>] device_add+0x44c/0x510
[    2.227570] [<ffffff800851e4d4>] platform_device_add+0xa0/0x1e4
[    2.227597] [<ffffff800851ef28>] platform_device_register_full+0xa4/0xe4
[    2.227627] [<ffffff80090f8680>] rockchip_cpufreq_driver_init+0xd4/0x31c
[    2.227654] [<ffffff8008083468>] do_one_initcall+0x84/0x1a4
[    2.227682] [<ffffff80090c0e98>] kernel_init_freeable+0x260/0x264
[    2.227708] [<ffffff8008b6ab68>] kernel_init+0x10/0xf8
[    2.227734] [<ffffff80080832a0>] ret_from_fork+0x10/0x30

Fixes: 197a2d322a ("soc: rockchip: opp_select: add missing rcu lock")
Change-Id: Ib52b6f7bc77bb207a1c8c6880f7a5e916fa3d2ee
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-28 15:20:48 +08:00
Finley Xiao
166cdaf4b0 soc: rockchip: opp_select: Fix of_device_id NULL when get soc info
Change-Id: I8a2d96c1f038bf4f288ded9f7edc944ccbac7950
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-28 15:10:37 +08:00
Lin Jianhua
a3d8ee5a91 arm: dts: rockchip: rk3308-voice-module: update 4amic mapping
Change-Id: I42d5d8a90ba0a45ec9268442fe8179dd8343c4c2
Signed-off-by: Lin Jianhua <linjh@rock-chips.com>
2018-06-28 14:24:09 +08:00
shengfei Xu
4237e0bec2 arm64: dts: rockchip: enable cpufreq 1.3G for rk3308 EVB V11
Change-Id: I06756eb90a8ffca1fe2223bd7e0f8343dd4a8e19
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-06-28 14:19:44 +08:00
shengfei Xu
fa76e15f03 arm64: dts: rockchip: add opp-1296000000 for rk3308
Change-Id: Ie734c94b0c136625cd620114d7fa87e8bbc64c83
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-06-28 14:19:24 +08:00
Wu Liangqing
b76f421b2d arm64: dts: rockchip: px30-evb: support miniboard
Change-Id: I3c98857e875ddc40df28896f328b4bc8e0c9539f
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2018-06-28 10:45:15 +08:00
Finley Xiao
24ba51b3b8 MALI: bifrost: RK: Remove unused code
Change-Id: I992a0a37ee369bdc2d62d25417ea771c554034ec
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-27 18:47:46 +08:00
Chen Jinsen
98cb4f02a0 ARM: dts: rk3288-th804: update regulators node
set vcc_tp stay on in suspend.

Change-Id: Ie6228b3941abda197d9b82d29a9ec3595f5b2337
Signed-off-by: Chen Jinsen <kevin.chen@rock-chips.com>
2018-06-27 17:17:03 +08:00
Jianqun Xu
8c3473213f arm64: dts: rockchip: add core dts file for rk1808 SoCs
Add core dts file for rk1808 SoCs with nodes:
 - cpu0
 - arm-pmu
 - armv8-timer
 - gic-v3
 - cru/pmucru
 - grf/pmugrf
 - dmac
 - uart2

Change-Id: Ifb262c75717ed4b8786d9f7541c059f1c587c239
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2018-06-27 17:16:41 +08:00
Ziyuan Xu
ff91a5dc43 pwm: pwm-rockchip-i2s: initialize the dma_slave_config to zero
Fixes: ddd2e87ad41e("dmaengine: pl330: add support for interlace size config")

Change-Id: I685d911f41f4654792a0b8cdecf29f928e938656
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2018-06-27 11:17:33 +08:00
Zhangbin Tong
370c79d9ff arm64: rockchip_linux_defconfig: enable CONFIG_SND_PROC_FS
Change-Id: Ie7b6dda20c004aedfb3c4ef5d03c10a8c8f945b5
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2018-06-27 11:04:46 +08:00
Tao Huang
125fc59fee arm64: rockchip_linux_defconfig: update by savedefconfig
Change-Id: I5cf3067fed0638c9467542e068f24036347a6c7b
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2018-06-27 11:03:45 +08:00
Nickey Yang
5c71c6f8a6 ARM: rockchip_linux_defconfig: Add PVTM support
Change-Id: I64fcb29936c2d6189c27579ba944f68378293e38
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
2018-06-27 10:34:05 +08:00
Andy Yan
23c2ba084d Use standard lz4 format for Image.lz4 on ARM64
The lz4 Legacy format(which specified by -l) is
not supported by U-Boot.

Change-Id: I6b94881117b59384daca4efd796c933e8dc9e5a6
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
2018-06-27 10:33:16 +08:00
zain wang
851673a7f3 arm64: dts: rockchip: add fastboot mode for rk3308
Enable fastboot when reboot command with fastboot.

Change-Id: I6a00700a014d5bd04eaf4980779bf89edc352426
Signed-off-by: zain wang <wzz@rock-chips.com>
2018-06-27 10:24:30 +08:00
Huibin Hong
c877ff73ec serial: 8250: reset uart when set baud rate
If external device sends data continuously, then uart is
always busy, and baud rate can't be set. It is useful
to reset uart and set loop back mode to make sure it is
idle.

Change-Id: I87286711870ff685ea29e36e61c97d45be5a6d08
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2018-06-27 10:18:54 +08:00
Finley Xiao
79096fa6e0 clk: rockchip: rk3308: Make sclk_ddrc critical
Change-Id: I1bf8ae0677c90fa725ecb6f3ab88f12483377fd9
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-26 16:09:41 +08:00
Sugar Zhang
08725d4ae9 ASoC: rockchip: multi_dais_pcm: refine dma slave config
This patch refine dma slave config only when interlace size is valid.

Change-Id: If02cec29083d5f582ccd0efcd78e7a6547d2df66
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-06-26 14:17:48 +08:00
Sugar Zhang
8be761ecda arm: dts: rockchip: rk3308-voice-module: update compatible for multi-dais
Change-Id: Ic41f660e10d3f296852f68ee44e31d34df7742e8
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-06-26 14:17:03 +08:00
Finley Xiao
03c7f95359 clk: rockchip: half-divider: Use maximal and best divider
The bigger the divider, the better the clock jitter.

Change-Id: I4b4e06c71c2f0bdb0e32422fb42c8d490c3ec4bd
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-26 14:07:00 +08:00
Finley Xiao
734b08ee50 clk: rockchip: half-divider: Fix error value when bestdiv is zero
Zero is a valid value for half-divider.

Change-Id: I23aa8afcd391da95396e5d808c3c424f993c66e3
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-26 14:07:00 +08:00
Joseph Chen
6ccd9a7567 firmware: rockchip: add last log request interface
Change-Id: I26e37b25d75ac07928f1964f5165e1a2a568ac69
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-06-25 16:03:54 +08:00
Shunqian Zheng
d55e688a4f ARM: dts: rockchip: override codec i2s_clk in rk3128.dtsi
Inside rk3128, the codec connects to i2s_8ch which is different
from the rk3126. This changes the i2s_clk to SCLK_I2S0, the mclk
of i2s_8ch, for rk3128.

Change-Id: I204e46dc2cf2c05bc85ef233b3139af94445ac90
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
2018-06-25 09:40:17 +08:00
Finley Xiao
421e14f3bc clk: rockchip: add a COMPOSITE_DIV_OFFSET clock-type
The div offset of some clocks are different from their mux offset
and the COMPOSITE clock-type require that div and mux offset are
the same, so add a new COMPOSITE_DIV_OFFSET clock-type to handle that.

Change-Id: I7d541e29328f37d2ad806b3b6e5ab35b5513b345
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-25 09:39:24 +08:00
Finley Xiao
ba98e189b6 arm64: dts: rockchip: px30: Change armclk rate to 600MHz
The initial voltage may be too low for 816MHz and it is enough for
600MHz. And as the alternate pll clock of armclk is created when
pmucru driver initialize, so move ARMCLK to pmucru node.

Change-Id: I1f443d55c74e5212a19e42e08b54ec946b4692d6
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2018-06-25 09:34:41 +08:00
Caesar Wang
403e528a22 drm/rockchip: vop: the display be turn off when wakeup
As the vop will turn off the all planes when the system wakeup, that can
avoid the splash screen issues.

But the normal display will be show util the
application is refreshed. That's clearly not sensible.

For now, we can stop dma for turning off vop data.

Change-Id: Ieff151bee7813b978bc3cb65f0457e37dc20bf2c
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2018-06-22 17:01:54 +08:00
Wenping Zhang
ae2cb0019b ASoC: soc-generic-dmaengine-pcm: fix kernel panic caused by no dma channel.
if there is no dma channel for sound, it will cause kernel panic.
CallTrace:
[    3.051899] Unable to handle kernel NULL pointer dereference at virtual address 00000268
[    3.056756] PC is at dmaengine_pcm_new+0x94/0x268
[    3.057189] LR is at soc_new_pcm+0x394/0x42c
[    3.225565] [<ffffff80088c8b80>] dmaengine_pcm_new+0x94/0x268
[    3.226083] [<ffffff80088c6cf0>] soc_new_pcm+0x394/0x42c
[    3.226568] [<ffffff80088bb6bc>] snd_soc_register_card+0x9cc/0xe78
[    3.227124] [<ffffff80088c733c>] devm_snd_soc_register_card+0x4c/0x88
[    3.227704] [<ffffff80088d4848>] asoc_simple_card_probe+0x3c8/0x3f8
[    3.228274] [<ffffff80084f811c>] platform_drv_probe+0x58/0xa4
[    3.228791] [<ffffff80084f638c>] driver_probe_device+0x118/0x2ac
[    3.229333] [<ffffff80084f666c>] __device_attach_driver+0x88/0x98
[    3.229886] [<ffffff80084f479c>] bus_for_each_drv+0x7c/0xac
[    3.230391] [<ffffff80084f61c0>] __device_attach+0xa4/0x124
[    3.230896] [<ffffff80084f67d8>] device_initial_probe+0x10/0x18
[    3.231425] [<ffffff80084f5820>] bus_probe_device+0x2c/0x8c
[    3.231930] [<ffffff80084f5c94>] deferred_probe_work_func+0x74/0xa0
[    3.232500] [<ffffff80080bac00>] process_one_work+0x228/0x3f4
[    3.233018] [<ffffff80080bb618>] worker_thread+0x304/0x418
[    3.233512] [<ffffff80080bff84>] kthread+0xe8/0xf0
[    3.233944] [<ffffff80080832a0>] ret_from_fork+0x10/0x30

Fixes: 57fae85633 ("ASoC: rockchip: add support for "rockchip,force-iram"")
Change-Id: Ia225ec129d04690fe64a61f15ad6152a71927d27
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2018-06-22 16:45:04 +08:00
Wyon Bi
5a6b1b87d1 drm/rockchip: dsi: Add Turn On/Shutdown Peripheral command support
Change-Id: I93ed400ce7db63928cab06b68954ed085b37cdb2
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2018-06-22 16:38:56 +08:00
Shunqian Zheng
4f7296c02d ARM: rockchip_linux_defconfig: Add more functions for px3se
This mainly enables rk312x codec and inno mipi dphy.

Note that the ES8396 is used by px3se-evb board, and
SWITCH is required by rk312x codec.

Change-Id: Ie2a0715ba04a073875423329654fe3a77d46965d
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
2018-06-22 16:25:52 +08:00
Shunqian Zheng
eb73f10672 ASoC: rk312x: fix duplicate const
SOC_ENUM_SINGLE_DECL already defined with const, removing
the duplicate const in rk312x_codec.c

Change-Id: I085b1faf99a9ccd3b06e4e642abc1bc43cc8bac7
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
2018-06-22 16:23:04 +08:00
Randy Li
fda925c797 drm/rockchip: enable async page flip configure
We support page flip through the drm atomic helper function.
But if we don't enable it the userspace won't know this
driver has such a capability.

Change-Id: If3689a526ea95235d191c0bbeba89745ae70d9c7
Signed-off-by: Randy Li <randy.li@rock-chips.com>
2018-06-22 16:19:09 +08:00
Yifeng Zhao
911b15f3de drivers: rk_nand: fix update loader fail issue
patch for arm aarch32 and aarch64.

bug: The NAND driver will write data to the wrong address with
2K page size SLC NAND FLASH.

[   14.047987] IDBlockWriteData 100 100
[   14.074717] IDBlockWriteData 100 100 ret= 0
[   14.075091] IdBlockReadData 100 100
[   14.084396] IdBlockReadData 100 100 ret= 0
[   14.084777] write and check error:1 idb=1,offset=86,r=238,w=40238

Change-Id: I2d635d0939edb2b2674c37898d5afd668da2ae5a
Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>
2018-06-22 16:14:20 +08:00
Yifeng Zhao
3f3c077099 drivers: rk_nand: add full disk for gpt and recovrey
Add full nand disk device for gpt and recovery.
Device path is /dev/block/rknand0 or /dev/rknand0.

Change-Id: If6f52e4fd2b32c55ef4795692c40b6a18d066cb0
Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>
2018-06-22 16:10:56 +08:00
Sandy Huang
8bc3f8e449 arm64: dts: rockchip: set logo to center display for rk3399-linux
set uboot and kernel logo center display for linux product.

Change-Id: I481432b2719598b5d776eb39c4809c05dfb646b0
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2018-06-22 16:10:25 +08:00
Shunqian Zheng
0fa6eee801 ARM: dts: rockchip: correct px3se codec interrupt number
From the datasheet, the built-in codec interrupt number
should be 64 = 96 - 32.

Change-Id: I8078949fe57ce3c87867a8f2853efba8fce0a634
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
2018-06-22 11:49:15 +08:00
shengfei Xu
ecfd04800a power: rk817_charger: the system voltage can't be shutdown in bat_off mode
Change-Id: I4d2edc98fd6397a09527d500096f29a0b9f068ff
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-06-21 18:14:51 +08:00
YouMin Chen
1cb7b3ece5 arm64: dts: rockchip: px30: disable ddr standby
The function of ddr standby influence memory stability,
so disable it for the present.

Change-Id: I9df7381944687da8819665009b162c387eb06ceb
Signed-off-by: YouMin Chen <cym@rock-chips.com>
2018-06-21 18:13:54 +08:00
Jeffy Chen
8a675248f2 arm64: dts: rockchip: Add gt1x's power-supply for rk3326 linux evb board
Change-Id: I1c42b6bf1b07d0a5bab8a0d0e8637a9b3270aa6c
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2018-06-21 16:30:07 +08:00
Sugar Zhang
fadcf87091 arm64: dts: rockchip: rk3308-evb-dmic-*.dts: update compatible for multi-dais
Change-Id: I030edcf8dfa78b662715da2aa81de5b4874b8909
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-06-21 11:29:21 +08:00
Sugar Zhang
8ffa8458c2 arm64: dts: rockchip: rk3308-evb-dmic-i2s-v10: enable vad + 6mic + 2loopback
Change-Id: Ie0524ee215400aa9f1fe57278aa757db9e051d12
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-06-21 11:29:21 +08:00
Sugar Zhang
9c5bec97cf ASoC: rockchip: multi_dais: add support for rk3308 i2s-16ch
Change-Id: I63ee1e32ebd70348274ca7da153983071f7906c1
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-06-21 11:28:52 +08:00
Sugar Zhang
158dc61454 arm64: dts: rockchip: rk3308-evb-dmic-i2s-v10: add i2s-16ch support
Change-Id: Ia5b6766b4fe3210a75234b3045a8f8e929161f75
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2018-06-21 11:09:39 +08:00
William Wu
ce648f5e4c phy: rockchip: rockchip-inno-usb2: check iddig upon resume
Because USB OTG id irq is disabled during system suspend
and enabled after resume, so the usb2 phy doesn't notice
any id status change upon resume. It may cause two issues:

1. Plug in OTG cable and USB device when system enter
   suspend, it will fail to detect the OTG cable and
   USB device after resume.

2. Plug out OTG cable and USB device when system enter
   suspend, and then connect USB to PC or USB charger
   after resume, it will fail to detect USB charge type.

This patch restores the OTG id status before enter suspend,
and check the id status upon resume, and set the extcon
state and vbus if id status has changed.

Change-Id: Iaca14841cc287e7d82e1cffd64ff18bba86d3ba4
Signed-off-by: William Wu <william.wu@rock-chips.com>
2018-06-21 11:04:01 +08:00
Jeffy Chen
d08b1af4bd input: touchscreen: gt1x: Add missing power on in resume
Add missing power on to pair with the power off in suspend.

Change-Id: I676b57dd8ba9aff108a3b57c4350d272d54ca996
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2018-06-21 10:56:59 +08:00
Jeffy Chen
6bca9742c8 input: touchscreen: gt1x: Fix NULL pointer exception in unbind
We're using devm_regulator_get, no need to put it manually.

Change-Id: Ida960d938d7557d0174c53e952d80161650ccf1a
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2018-06-21 10:56:42 +08:00