firefly-linux-kernel-4.4.55.git
7 years agopower: rk818-battery: fix charge voltage table define error
chenjh [Thu, 30 Mar 2017 01:30:22 +0000 (09:30 +0800)]
power: rk818-battery: fix charge voltage table define error

Change-Id: Ica6f1a11846a93485847406fdcd914d76662eda4
Signed-off-by: chenjh <chenjh@rock-chips.com>
7 years agoUPSTREAM: drm/edid: Extract SADs properly from multiple audio data blocks
Ville Syrjälä [Wed, 9 Mar 2016 20:07:46 +0000 (22:07 +0200)]
UPSTREAM: drm/edid: Extract SADs properly from multiple audio data blocks

SADs may span multiple CEA audio data blocks in the EDID.

CEA-861-E says:
"The order of the Data Blocks is not constrained. It is also possible
to have more than one of a specific type of data block if necessary to
include all of the descriptors needed to describe the sink’s capabilities."

Each audio data block can carry up to 10 SADs, whereas the ELD SAD limit
is 15 according to HDA 1.0a spec. So we should support at least two data
blocks. And apparently some devices take a more liberal interpretation
and stuff only one SAD per data block even when they would fit into one.

So let's try to extract all the SADs we can fit into the ELD even when
they span multiple data blocks.

While at it, toss in a comment to explain the 13 byte monitor name
string limit which confused me at first.

Cc: Arturo Pérez <artur999555@gmail.com>
Tested-by: Arturo Pérez <artur999555@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94197
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1457554066-8739-1-git-send-email-ville.syrjala@linux.intel.com
(cherry picked from commit 7c01878254daadbb91f5b1137b7404d952e3931b)
Change-Id: I18c5c64b69802a6a50de624d55b4b5217943b76e
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
7 years agoarm64: rockchip_defconfig: enable CONFIG_PHY_ROCKCHIP_DP
WeiYong Bi [Thu, 30 Mar 2017 00:30:13 +0000 (08:30 +0800)]
arm64: rockchip_defconfig: enable CONFIG_PHY_ROCKCHIP_DP

Change-Id: Icdaad2e5aa8b54b0b27a6770e9d6354b13822900
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
7 years agodrm: bridge: dw-hdmi: add debugfs node
Zheng Yang [Thu, 2 Mar 2017 09:38:50 +0000 (17:38 +0800)]
drm: bridge: dw-hdmi: add debugfs node

Create two debugfs node to debug hdmi controller and phy.

Use following command to debug:
Read hdmi controller register:
cat /d/dw-hdmi/ctrl
Read hdmi phy register:
cat /d/dw-hdmi/phy
Write hdmi controller register:
echo <reg> <val> > /d/dw-hdmi/ctrl
Write hdmi phy register:
echo <reg> <val> > /d/dw-hdmi/phy

<reg> and <val> is hexadecimal.

Change-Id: I02e40cc94aa651ff0734feddbfa7d816edcf222f
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
7 years agovideo: rockchip: vpu: clear mmu status when vpu reset
Jung Zhao [Mon, 27 Mar 2017 06:00:08 +0000 (14:00 +0800)]
video: rockchip: vpu: clear mmu status when vpu reset

Change-Id: I9c8f02e5275b2a5e286b4306a2390b8cbfdcbbe5
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
7 years agoARM: dts: rk3288: set simple_ondemand parameter for gpu
Jacob Chen [Thu, 23 Mar 2017 01:58:29 +0000 (09:58 +0800)]
ARM: dts: rk3288: set simple_ondemand parameter for gpu

Change-Id: If69037b42d424521abd9fb1f0826441068cfd94f
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
7 years agoMALI: midgard: Linux: support custom ondemand_data
Jacob Chen [Thu, 23 Mar 2017 01:03:23 +0000 (09:03 +0800)]
MALI: midgard: Linux: support custom ondemand_data

get parameter from dts

Change-Id: Id1b11e3d6a5809cbd4f6f52b1595562e0fa66f70
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
7 years agoclk: rockchip: add SCLK_DDRC id for rk3368 ddrc
Finley Xiao [Sat, 25 Mar 2017 10:31:25 +0000 (18:31 +0800)]
clk: rockchip: add SCLK_DDRC id for rk3368 ddrc

Add the needed id for the ddr clock.

Change-Id: Ib2a4d8dffef5b393e294df49a925577f14306e72
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
7 years agocamera: rockchip: camsys version 0.0x21.0xb
dalon.zhang [Fri, 24 Mar 2017 10:37:05 +0000 (18:37 +0800)]
camera: rockchip: camsys version 0.0x21.0xb

some log is so boring, set print level more high.

Change-Id: I8cfe16f535718a130fa03ee7173e4ef325239e06
Signed-off-by: dalon.zhang <dalon.zhang@rock-chips.com>
7 years agodrm: bridge/dw_hdmi: check is_hdmi2 in hdmi_config_AVI
Zheng Yang [Mon, 27 Mar 2017 03:32:45 +0000 (11:32 +0800)]
drm: bridge/dw_hdmi: check is_hdmi2 in hdmi_config_AVI

If a display support HDMI2.0, it must support SCDC or YCbCr420.
So we check the connector->scdc_present and mode->flags to
check the connected display is HDMI 2.0.

Change-Id: I3b868d43791089fcdef77f99ec90396553008b9a
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
7 years agoFROMLIST: drm: Add HDMI 2.0 VIC support for AVI info-frames
Zheng Yang [Mon, 27 Mar 2017 03:04:14 +0000 (11:04 +0800)]
FROMLIST: drm: Add HDMI 2.0 VIC support for AVI info-frames

HDMI 1.4b support the CEA video modes as per range of CEA-861-D (VIC 1-64).
For any other mode, the VIC filed in AVI infoframes should be 0.
HDMI 2.0 sinks, support video modes range as per CEA-861-F spec, which is
extended to (VIC 1-107).

This patch adds a bool input variable, which indicates if the connected
sink is a HDMI 2.0 sink or not. This will make sure that we don't pass a
HDMI 2.0 VIC to a HDMI 1.4 sink.

This patch touches all drm drivers, who are callers of this function
drm_hdmi_avi_infoframe_from_display_mode but to make sure there is
no change in current behavior, is_hdmi2 is kept as false.

In case of I915 driver, this patch checks the connector->display_info
to check if the connected display is HDMI 2.0.

Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
Cc: Jose Abreu <jose.abreu@synopsys.com>
Cc: Andrzej Hajda <a.hajda@samsung.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Daniel Vetter <daniel.vetter@intel.com>
PS: This patch touches a few lines in few files, which were
already above 80 char, so checkpatch gives 80 char warning again.
- gpu/drm/omapdrm/omap_encoder.c
- gpu/drm/i915/intel_sdvo.c

Signed-off-by: Shashank Sharma <shashank.sharma@intel.com>
(am from https://patchwork.kernel.org/patch/9641449)
Change-Id: I364cd0aed7eea0384ea9eddfff20c3fa86eb9ba2
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
7 years agoUPSTREAM: devfreq: rk3399_dmc: Remove dangling rcu_read_unlock()
Viresh Kumar [Thu, 1 Dec 2016 10:42:14 +0000 (16:12 +0530)]
UPSTREAM: devfreq: rk3399_dmc: Remove dangling rcu_read_unlock()

This call never had the rcu_read_lock() counterpart. Remove the unlock
part as well.

Change-Id: Ifc5abfd7cea9a245b6edc0f50e362963ac045b7f
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
(cherry picked from commit d8323de3d4062e1b5a5aa7e9c0f935138405a582)

7 years agoUPSTREAM: PM / devfreq: rk3399_dmc: Use the resource-managed function to add devfreq dev
Chanwoo Choi [Tue, 8 Nov 2016 09:13:27 +0000 (18:13 +0900)]
UPSTREAM: PM / devfreq: rk3399_dmc: Use the resource-managed function to add devfreq dev

This patch uses the resource-managed to add the devfreq device.
This function will make it easy to handle the devfreq device.

- struct devfreq *devm_devfreq_add_device(struct device *dev,
  struct devfreq_dev_profile *profile,
  const char *governor_name,
  void *data);

Conflicts:
        drivers/devfreq/rk3399_dmc.c

Change-Id: I2ba2779a1b944931dc240f0593824f0316d11985
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
(cherry picked from commit 927b75a628b1d80fef171420fbd694fc28d9b8e9)

7 years agoUPSTREAM: PM / devfreq: rk3399_dmc: Fix module autoload
Javier Martinez Canillas [Wed, 19 Oct 2016 21:06:24 +0000 (18:06 -0300)]
UPSTREAM: PM / devfreq: rk3399_dmc: Fix module autoload

If the driver is built as a module, autoload won't work because the module
alias information is not filled. So user-space can't match the registered
device with the corresponding module.

Export the module alias information using the MODULE_DEVICE_TABLE() macro.

Before this patch:

$ modinfo drivers/devfreq/rk3399_dmc.ko | grep alias
$

After this patch:

$ modinfo drivers/devfreq/rk3399_dmc.ko | grep alias
alias:          of:N*T*Crockchip,rk3399-dmcC*
alias:          of:N*T*Crockchip,rk3399-dmc

Change-Id: I4bffd86067bb487619ce8365532123938a0ca964
Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
(cherry picked from commit 2f3f1a261c0f4827bda86009f0059aefbe30ed11)

7 years agoUPSTREAM: PM / devfreq: rk3399_dmc: Remove explictly regulator_put call in .remove
Axel Lin [Sun, 18 Sep 2016 02:41:05 +0000 (10:41 +0800)]
UPSTREAM: PM / devfreq: rk3399_dmc: Remove explictly regulator_put call in .remove

Current code uses devm_regulator_get() in .probe so a regulator_put() will
be automatically called when unload the module. Remove the explictly
regulator_put() call and then we can also remove rk3399_dmcfreq_remove().

Change-Id: I56a62a76f06403aff9ad0478e7701862084a90b3
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
(cherry picked from commit da4a64481b3504a6f4f07c08ff03be8f08d9638d)

7 years agoclk: rockchip: rk3288: add gate id of hclk_usb_peri for usb otg
Frank Wang [Tue, 28 Mar 2017 09:27:01 +0000 (17:27 +0800)]
clk: rockchip: rk3288: add gate id of hclk_usb_peri for usb otg

Change-Id: Ib45f6d97ec81329ec9a4a19e9e836efa0ea61fe2
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
7 years agodrm: bridge: dw-hdmi-i2s-audio: enable INSERT_PCUV bit for LPCM
Zheng Yang [Mon, 27 Mar 2017 01:38:26 +0000 (09:38 +0800)]
drm: bridge: dw-hdmi-i2s-audio: enable INSERT_PCUV bit for LPCM

dw-hdmi introduced insert_pcuv bit in version 2.10a. When
set (1'b1), this bit enables the insertion of the PCUV
(Parity, Channel Status, User bit and Validity) bits on the
incoming audio stream (support limited to Linear PCM audio).

Change-Id: Ib12a50bf7064ac78dbf143f1ea35d7f68f861877
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
7 years agoARM: rockchip_defconfig: enable dwc2 driver
William Wu [Tue, 28 Mar 2017 07:24:20 +0000 (15:24 +0800)]
ARM: rockchip_defconfig: enable dwc2 driver

Change-Id: Ie84fb1d496f18114da988f52e1a9e4b240013844
Signed-off-by: William Wu <wulf@rock-chips.com>
7 years agoarm64: rockchip_linux_defconfig: enable PCIe config
hero.huang [Thu, 16 Mar 2017 09:09:27 +0000 (17:09 +0800)]
arm64: rockchip_linux_defconfig: enable PCIe config

Change-Id: I7be6a725eb0043d135d166939ecde3c6f47b24f9
Signed-off-by: hero.huang <hero.huang@rock-chips.com>
7 years agork808: rtc: set rtc stopped by default
Elaine Zhang [Mon, 27 Mar 2017 02:55:16 +0000 (10:55 +0800)]
rk808: rtc: set rtc stopped by default

set rtc stopped by default, start rtc in rtc device probe.
add rtc node, whether RTC need to initialize.

Change-Id: Ifab269786f316d33149a50a18e23af1b6206d57d
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
7 years agoarm64: dts: rockchip: enable pcie_phy for Sapphire board
hero.huang [Tue, 28 Mar 2017 01:01:00 +0000 (09:01 +0800)]
arm64: dts: rockchip: enable pcie_phy for Sapphire board

Change-Id: Ia59a697ee27d4f4848f3fceb344f362b7fdcae73
Signed-off-by: hero.huang <hero.huang@rock-chips.com>
7 years agoarm64: rockchip_defconfig: update by savedefconfig
Huang, Tao [Tue, 28 Mar 2017 03:08:32 +0000 (11:08 +0800)]
arm64: rockchip_defconfig: update by savedefconfig

Change-Id: I642605f12bb453b9b09dea3d199923a314fec844
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
7 years agophy: rockchip-dp: fix unexpected reset 24m clock
WeiYong Bi [Mon, 27 Mar 2017 23:51:03 +0000 (07:51 +0800)]
phy: rockchip-dp: fix unexpected reset 24m clock

Reset_control_assert/reset_control_deassert will not check whether
the incoming pointer is NULL, so we need to check it before using it.

Change-Id: Ib2aeeefcb2d5d7429031bc21bf7e3df1d897a6c9
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
7 years agoarm: dts: rk3288-evb: add ion support
Jianqun Xu [Tue, 28 Mar 2017 01:29:17 +0000 (09:29 +0800)]
arm: dts: rk3288-evb: add ion support

Change-Id: Icbdba5ef01681e4ab107a5af295cfa9e51215288
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agodrm/rockchip: rga: replace primitive api with dma sync api
Jacob Chen [Mon, 27 Mar 2017 08:15:11 +0000 (16:15 +0800)]
drm/rockchip: rga: replace primitive api with dma sync api

Since rga is a dma-coherent device, we have to use drm bus
 device to call sync api.

Change-Id: Ia12062293fabba083c8ab9c4f7457e3167807bb9
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
7 years agousb: dwc_otg_310: remove unused configs
William Wu [Mon, 27 Mar 2017 08:29:25 +0000 (16:29 +0800)]
usb: dwc_otg_310: remove unused configs

The USB20_HOST_EN and USB20_OTG_EN configs are used
for rockchip dwc2 legacy driver, they are not needed
for dwc_otg_310 driver.

Change-Id: I4c16f0be5276b3c07429ab88cb063508b34ce007
Signed-off-by: William Wu <wulf@rock-chips.com>
7 years agoarm: rockchip_defconfig: enable dwc_otg_310 usb driver
Frank Wang [Mon, 27 Mar 2017 03:41:34 +0000 (11:41 +0800)]
arm: rockchip_defconfig: enable dwc_otg_310 usb driver

This adds enable dwc_otg_310 driver for dwc otg and host.

Change-Id: I779c663992b270015515d45a94e3fa4187368a93
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
7 years agousb: dwc_otg_310: fixed compilation error
Frank Wang [Mon, 27 Mar 2017 03:31:35 +0000 (11:31 +0800)]
usb: dwc_otg_310: fixed compilation error

Change-Id: I5f501184c11d25493f6855d994e32c1043371161
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
7 years agoARM64: dts: rockchip: configure EAS data for rk3368
Chen Liang [Mon, 27 Mar 2017 03:45:42 +0000 (11:45 +0800)]
ARM64: dts: rockchip: configure EAS data for rk3368

Change-Id: I3154b1ae060553b7919c213420782f7a1f5d36fc
Signed-off-by: Chen Liang <cl@rock-chips.com>
7 years agoarm64: dts: rk3368-android: Add eDP route node
WeiYong Bi [Mon, 27 Mar 2017 07:47:17 +0000 (15:47 +0800)]
arm64: dts: rk3368-android: Add eDP route node

Change-Id: I824d7a1c15cf7cddcb2e3f080498bd23e269be40
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
7 years agoarm64: dts: rockchip: Add eDP node for rk3368
WeiYong Bi [Sat, 25 Mar 2017 03:20:36 +0000 (11:20 +0800)]
arm64: dts: rockchip: Add eDP node for rk3368

Change-Id: I0fa5ddc12cdbb2bf1d9fb0667222ead15071bdec
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
7 years agophy: rockchip-dp: Add support for rk3368 Display Port PHY
WeiYong Bi [Sat, 25 Mar 2017 03:13:55 +0000 (11:13 +0800)]
phy: rockchip-dp: Add support for rk3368 Display Port PHY

Change-Id: Ic2134ba719dadba121dc2fcc944662ef06b2ecfa
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
7 years agodrm/rockchip: analogix_dp: Add support for RK3368 eDP
WeiYong Bi [Sat, 25 Mar 2017 02:14:05 +0000 (10:14 +0800)]
drm/rockchip: analogix_dp: Add support for RK3368 eDP

Change-Id: I738ddf122776081cf41adef2921644ddfc6e07dd
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
7 years agoclk: rockchip: rk3368: set hclk_vio_noc as critical clock
Elaine Zhang [Mon, 27 Mar 2017 09:28:04 +0000 (17:28 +0800)]
clk: rockchip: rk3368: set hclk_vio_noc as critical clock

to fix up the display shaking when uboot to kernel show.

Change-Id: I5f85028921d76a2dea752aafe7420b05b041bc8e
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
7 years agoarm: dts: rk3288-evb: add support for GSL3673
Jianqun Xu [Mon, 27 Mar 2017 08:51:50 +0000 (16:51 +0800)]
arm: dts: rk3288-evb: add support for GSL3673

GSL3673 is a touchscreen device, let support it.

Change-Id: I4bf302c395491ca49a1874c8984caa0b49cfb326
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoarm: dts: rk3288: move i2c0 to the front of other i2c
Jianqun Xu [Mon, 27 Mar 2017 08:47:35 +0000 (16:47 +0800)]
arm: dts: rk3288: move i2c0 to the front of other i2c

Change-Id: I822622fc1f1ed41729851294858246cf6da8c202
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoFROMLIST: drm: bridge: dw-hdmi: add HDMI vendor specific infoframe config
Nickey Yang [Mon, 20 Mar 2017 05:57:02 +0000 (13:57 +0800)]
FROMLIST: drm: bridge: dw-hdmi: add HDMI vendor specific infoframe config

Vendor specific infoframe is mandatory for 4K2K resolution
and stereoscopic 3D mode.
Without this, the HDMI protocol compliance fails.
(am from https://patchwork.kernel.org/patch/9636115/)

Change-Id: I97ebe1b139eff7fe69cc9f393b40426134588b91
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
Reviewed-by: Jose Abreu <joabreu@synopsys.com>
7 years agoarm64: dts: rockchip: update thermal config and add gpu's parameters for rk3368
Rocky Hao [Fri, 24 Mar 2017 10:07:51 +0000 (18:07 +0800)]
arm64: dts: rockchip: update thermal config and add gpu's parameters for rk3368

add both static and dynamic power coefficient for gpu
module, and add gpu as a cooling device in the thermal zone.
rename the thermal zone's config and make it more readable.
update temperature pooling interval and make the temperature
control more effective.

Change-Id: I6e0939fe26ece9c611151ffbbb55e62b824a602f
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
7 years agoarm64: dts: rk3368-p9: fix backlight polarity err
Zorro Liu [Fri, 24 Mar 2017 08:18:44 +0000 (16:18 +0800)]
arm64: dts: rk3368-p9: fix backlight polarity err

Change-Id: I3dc9376b60f3c6acba67cfb379944c7c969b2ffc
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
7 years agodrm/rockchip: vop: correct rk3368/rk3366 feature
Mark Yao [Mon, 27 Mar 2017 01:14:44 +0000 (09:14 +0800)]
drm/rockchip: vop: correct rk3368/rk3366 feature

RK3368/RK3366 not support 10bit output

Change-Id: Ib5cdab237828236e7867ce784d0e7b208aeb1ed0
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agoarm: dts: rk3288-evb: use rockchip_key to replace adc_key
Jianqun Xu [Mon, 27 Mar 2017 00:58:14 +0000 (08:58 +0800)]
arm: dts: rk3288-evb: use rockchip_key to replace adc_key

Change-Id: I46df35c489bf15a159eb64a2d5e3d0b3510f6bef
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoInput: add document for rockchip keys
Jianqun Xu [Mon, 27 Mar 2017 01:36:20 +0000 (09:36 +0800)]
Input: add document for rockchip keys

Change-Id: I3f8f4522e6279e3f5faf3f293936c835ce8fc6b7
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoARM: rockchip_defconfig: update defconfig
Huang, Tao [Fri, 24 Mar 2017 11:03:00 +0000 (19:03 +0800)]
ARM: rockchip_defconfig: update defconfig

Change-Id: I594981b15c098d78313c4c17572cfbab643dbc9a
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
7 years agovideo/rockchip: rga2: fix compilation warning
Huang, Tao [Sat, 25 Mar 2017 05:09:38 +0000 (13:09 +0800)]
video/rockchip: rga2: fix compilation warning

Change-Id: I92c2034da63cc8db2dac9a55cb654d4af21a7cf8
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
7 years agork: Makefile set default CROSS_COMPILE for arm
Huang, Tao [Sat, 25 Mar 2017 05:10:27 +0000 (13:10 +0800)]
rk: Makefile set default CROSS_COMPILE for arm

Change-Id: I44a0dfe1a1f3bbad6f6c21001d2e4d668ff0db8a
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
7 years agousb: otg: modify default to n for usb2.0
Jianqun Xu [Thu, 23 Mar 2017 10:35:04 +0000 (18:35 +0800)]
usb: otg: modify default to n for usb2.0

Change-Id: I6dc85a9fbf89b35afe67fc119f0d60a130691317
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoarm64: dts: rk3399-box: fix dp and hdmi dclk parents
Mark Yao [Fri, 24 Mar 2017 14:26:20 +0000 (22:26 +0800)]
arm64: dts: rk3399-box: fix dp and hdmi dclk parents

Change-Id: Iebe0bfe248bf4ca6f61dafe1eb86a34dc6346e6f
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agoarm64: dts: rk3368: modify rksdmmc to dwmmc
Jianqun Xu [Fri, 24 Mar 2017 09:25:13 +0000 (17:25 +0800)]
arm64: dts: rk3368: modify rksdmmc to dwmmc

Modify rksdmmc to dwmmc, sync with upstream.

Change-Id: I0aabcf47a5fe1b1f564bde2f719d8c1c48debc90
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agostaging: ion: dup sg_table when map_dma_buffer
Mark Yao [Fri, 24 Mar 2017 06:31:22 +0000 (14:31 +0800)]
staging: ion: dup sg_table when map_dma_buffer

Change-Id: Ib57df4e7f972a8e46b6c8e8c82e314e04cc3b349
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agoarm64: dts: rockchip: rk3399: add aclk/hclk_vop init freq
Elaine Zhang [Fri, 24 Mar 2017 07:01:55 +0000 (15:01 +0800)]
arm64: dts: rockchip: rk3399: add aclk/hclk_vop init freq

to fix up the display error when no uboot logo show.

Change-Id: I6227391a3c0d015a5fa6ae916d849659d5957077
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
7 years agovideo/rga: fix rga support flip
Zikim,Wei [Tue, 11 Oct 2016 03:25:21 +0000 (11:25 +0800)]
video/rga: fix rga support flip

Change-Id: Ib5283779e08d1e58ff8a1fb5e3eb662aa8f0d130
Signed-off-by: Zikim,Wei <wzq@rock-chips.com>
(cherry picked from commit 7318eabddc3799460319181f9ffd34f2116a9e46)

7 years agovideo/rockchip: rga: replace system_nrt_wq with system_wq
Jianqun Xu [Wed, 22 Mar 2017 05:06:13 +0000 (13:06 +0800)]
video/rockchip: rga: replace system_nrt_wq with system_wq

Change-Id: Id79ba17575b5844c329391a6e33e0f2f0c4353ff
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agovideo: rockchip: vpu: alloc & mmap iova inside drm allocator
Jung Zhao [Tue, 21 Mar 2017 01:14:55 +0000 (09:14 +0800)]
video: rockchip: vpu: alloc & mmap iova inside drm allocator

since on 3368 platform, hevc & vpu share the same hardware
resource, but have two independent mmu. and only one mmu can
be attached at the same time. I have to alloc and mmap iova
outside mmu attached status, otherwise it will cause mmu reset
error.

fix bugs:
1. hevc & vpu can work at the same time now. on 3368 platform,
vpu_mmu and hevc_mmu share the same irq with their respective
master device, we can not detach mmu during irq context.
2. fix copy_sgt offset and lenght invalide value

Change-Id: I9d02aa0b85a6d0690832c7869a260953f5a5baab
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
7 years agommc: rm rk_sdmmc.c
Huang, Tao [Thu, 23 Mar 2017 13:35:01 +0000 (21:35 +0800)]
mmc: rm rk_sdmmc.c

Change-Id: Id48880a140a8055d30dafb42ad3e1aef973ae5c6
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
7 years agovideo: rockchip: vpu: add rk3368 support
Jung Zhao [Mon, 20 Mar 2017 03:27:04 +0000 (11:27 +0800)]
video: rockchip: vpu: add rk3368 support

3368 is vpu & hevc combo platform which have a virtual master device
and two sub devcie - vpu_service & hevc_service. There is a flag in
grf, driver need write or erase this flag when switch mode.

since shutdown function only be called on virtual master device, we
need to call into both vpu and hevc device.

Change-Id: I56ad28dbbc7cc380204fb7d0da11d93b5ace9469
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
7 years agoARM64: dts: rk3368-android: enable vpu_combo default
Jung Zhao [Thu, 23 Mar 2017 09:42:46 +0000 (09:42 +0000)]
ARM64: dts: rk3368-android: enable vpu_combo default

Change-Id: I7b130e3d0787c441f862030f8a935063af818e01
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
7 years agoARM64: dts: rk3368: add vpu & hevc node
Jung Zhao [Mon, 20 Mar 2017 03:14:27 +0000 (11:14 +0800)]
ARM64: dts: rk3368: add vpu & hevc node

Change-Id: Iee8fb808ad0c929be8fa5db8164fd6e05321b352
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
7 years agoarm: dts: rk3288-evb: disable uart 1/3/4
Jianqun Xu [Fri, 24 Mar 2017 02:37:46 +0000 (10:37 +0800)]
arm: dts: rk3288-evb: disable uart 1/3/4

Uart3 has been iomux to gpio, for vcc_3g regulator, which is designed
on rk3288 evb main board.

Disable unused uarts to fix gpio request blaim during system booting.

Change-Id: I2eb79ae63a6f226255c12fc3da9ba95ec4219d32
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoarm: dts: rk3288-evb: fix regulator 'No configuration' error
Jianqun Xu [Fri, 24 Mar 2017 03:13:17 +0000 (11:13 +0800)]
arm: dts: rk3288-evb: fix regulator 'No configuration' error

SYR827/SYR828 regulators complain "No configuration", which caused by
lacking of regulator-state-mem.

Change-Id: Id113c05abb8fb095bf09979b5eb8ea1c4891037b
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agostaging: ion: add dma_map_sg/dma_umap_sg to map_dma_buf
Mark Yao [Fri, 26 Jun 2015 00:42:30 +0000 (08:42 +0800)]
staging: ion: add dma_map_sg/dma_umap_sg to map_dma_buf

Change-Id: Ibb1da3afd35a4411f096e8cbd7a17d35fc216cba
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agoiommu/rockchip: add multi irq support
Jung Zhao [Mon, 20 Mar 2017 03:23:29 +0000 (11:23 +0800)]
iommu/rockchip: add multi irq support

there are two irq in vpu_mmu on 3368 platform.

Change-Id: I81d869c1ee536e31334a401a2ddb0e7f2226d4b2
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
7 years agoarm: dts: rk3288-evb: remove memory node
Jianqun Xu [Wed, 22 Mar 2017 09:16:31 +0000 (17:16 +0800)]
arm: dts: rk3288-evb: remove memory node

Change-Id: I84b2397dea92eb0e7cc926c17515c16f98854ad4
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoarm: dts: rk3288-evb: add copyright
Jianqun Xu [Wed, 22 Mar 2017 04:35:59 +0000 (12:35 +0800)]
arm: dts: rk3288-evb: add copyright

Change-Id: I4a68728a38d725a39bfefc51a3b188be94ffe87c
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoarm: dts: rk3288-evb: add earlycon to args of cmdline
Jianqun Xu [Wed, 22 Mar 2017 04:34:25 +0000 (12:34 +0800)]
arm: dts: rk3288-evb: add earlycon to args of cmdline

Change-Id: I4a7ce913deac9e88a9660c960c9fed746226db78
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agodrm/drm-prime: cache dma_buf import context
Mark Yao [Mon, 20 Mar 2017 02:31:02 +0000 (10:31 +0800)]
drm/drm-prime: cache dma_buf import context

Change-Id: Ia39a3d4691f0b545039efb880c999a35886178a0
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agodma-buf: add release callback support
Mark Yao [Mon, 20 Mar 2017 01:46:47 +0000 (09:46 +0800)]
dma-buf: add release callback support

Change-Id: Ibfb4ffe3d97fae0a27f20032fdfbc3cc561aa375
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agodrm/rockchip: fixup display reference count
Mark Yao [Wed, 22 Mar 2017 08:40:05 +0000 (16:40 +0800)]
drm/rockchip: fixup display reference count

Change-Id: I9ae0699f26e3971e1f01cf36aa7a2f64dcade8dc
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agodrm/rockchip: add support for src1
Jacob Chen [Mon, 13 Mar 2017 10:09:56 +0000 (18:09 +0800)]
drm/rockchip: add support for src1

Although libdrm didn't implment src1, we should support it in driver in advance.

Change-Id: I7da051d1376ded63750f3363f9dd37fe6937a81c
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
7 years agoarm64: dts: rk3368-android: remove dumplicated node
Xu Jianqun [Thu, 23 Mar 2017 06:07:58 +0000 (14:07 +0800)]
arm64: dts: rk3368-android: remove dumplicated node

Change-Id: If5675877c29fbc7f29568cfe2c482f98d9d62608
Signed-off-by: Xu Jianqun <jay.xu@rock-chips.com>
7 years agoclk: rockchip: rk3368: Add CLK_IGNORE_UNUSED flag for mipi phy refclk
WeiYong Bi [Tue, 21 Mar 2017 03:41:04 +0000 (11:41 +0800)]
clk: rockchip: rk3368: Add CLK_IGNORE_UNUSED flag for mipi phy refclk

If this flag is not specified, will cause loader display abnormal.

Change-Id: I8ecfc2a6f55c8437e7c30d1cf099ae8cc93a0150
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
7 years agodrm/rockchip: vop: report error when check resource error
Mark Yao [Wed, 22 Mar 2017 11:05:00 +0000 (19:05 +0800)]
drm/rockchip: vop: report error when check resource error

Change-Id: If59ea4f7344931795cadcfec1cae4d2ab95ab4c3
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agoarm64: rockchip_linux_defconfig: enable rtl8188eu
zzc [Wed, 22 Mar 2017 08:08:41 +0000 (16:08 +0800)]
arm64: rockchip_linux_defconfig: enable rtl8188eu

CONFIG_WIFI_LOAD_DRIVER_WHEN_KERNEL_BOOTUP=y
CONFIG_RTL8188EU=y

Change-Id: I5d19e92280f0fb91701a3f2547251069380593ef
Signed-off-by: zzc <zzc@rock-chips.com>
7 years agovideo/rockchip: rga2: enable rga power when read rga version
Mark Yao [Wed, 22 Mar 2017 02:10:32 +0000 (10:10 +0800)]
video/rockchip: rga2: enable rga power when read rga version

Change-Id: Ib2a704b8f75f4b792dc5a70ed58c0b9306c2793c
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
7 years agoarm64: dts: rockchip: rk3399: remove some unnecessary assigned-clocks node
Elaine Zhang [Wed, 22 Mar 2017 02:41:38 +0000 (10:41 +0800)]
arm64: dts: rockchip: rk3399: remove some unnecessary assigned-clocks node

keep aclk_vop hclk_vop freq the same as uboot,
to slove shaking for uboot logo to kernel show.

Change-Id: Id0b86fc583024482f16f40b2f1ec6f9189eac160
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
7 years agoarm64: dts: rk3328-evb: set fiq-debugger signal-irq to 145
Huang, Tao [Wed, 22 Mar 2017 06:31:46 +0000 (14:31 +0800)]
arm64: dts: rk3328-evb: set fiq-debugger signal-irq to 145

Before is 135, which is conflict with arm-pmu irq.

Change-Id: Ib17928f3e3854b8ff1a0571e1639ca362ef2e190
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
7 years agoahci: Add Device ID for ASMedia 1061R and 1062R
Shawn Lin [Wed, 22 Mar 2017 03:21:35 +0000 (11:21 +0800)]
ahci: Add Device ID for ASMedia 1061R and 1062R

Change-Id: Idecc85eb9af85dbb7e6fcca95aa63762bcf1c2b4
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
7 years agoarm64: dts: rockchip: config pwm polarity on rk3399-mid
Zhou weixin [Mon, 13 Mar 2017 06:39:00 +0000 (14:39 +0800)]
arm64: dts: rockchip: config pwm polarity on rk3399-mid

Change-Id: Icbc406cb737c8ee00fd63b218bde3751611acc19
Signed-off-by: Zhou weixin <zwx@rock-chips.com>
7 years agoarm64: dts: rk3368-android: enable isp
dalon.zhang [Sun, 19 Mar 2017 03:43:55 +0000 (11:43 +0800)]
arm64: dts: rk3368-android: enable isp

Change-Id: Ib658fb798bb24b9686a78b4a2b64ab9fcc1a92f6
Signed-off-by: dalon.zhang <dalon.zhang@rock-chips.com>
7 years agoarm64: dts: rk3368: add isp config
dalon.zhang [Sun, 19 Mar 2017 03:41:06 +0000 (11:41 +0800)]
arm64: dts: rk3368: add isp config

Change-Id: I279afac575d17f534ce028ec13fbec7798b117d9
Signed-off-by: dalon.zhang <dalon.zhang@rock-chips.com>
7 years agodrm: bridge: dw-hdmi: enable 3d mode
algea.cao [Tue, 14 Mar 2017 01:28:46 +0000 (09:28 +0800)]
drm: bridge: dw-hdmi: enable 3d mode

Change-Id: I45c4b0ded4aeaf24122d5cc6eb49b6bc72afc060
Signed-off-by: algea.cao <algea.cao@rock-chips.com>
7 years agocamera: rockchip: camsys v0.0x21.0xa
dalon.zhang [Sun, 19 Mar 2017 03:50:59 +0000 (11:50 +0800)]
camera: rockchip: camsys v0.0x21.0xa

Change-Id: Ic9c5661ba76eaf8aee36e1a1822aa9bcd288e0ac
Signed-off-by: dalon.zhang <dalon.zhang@rock-chips.com>
7 years agoarm64: dts: rockchip: update thermal config for rk3368
Rocky Hao [Tue, 21 Mar 2017 02:54:12 +0000 (10:54 +0800)]
arm64: dts: rockchip: update thermal config for rk3368

add cpus' dynamic power coefficient and update alert temperature

Change-Id: I502e49d52268b63625e01103b50e6c18fb8da8b0
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
7 years agoarm64: dts: rockchip: enable tsadc node for rk3368 p9 board
Zorro Liu [Tue, 21 Mar 2017 08:33:40 +0000 (16:33 +0800)]
arm64: dts: rockchip: enable tsadc node for rk3368 p9 board

Change-Id: I5d8b84248b0c713068143df303427ef31cb78963
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
7 years agoarm64: dts: rk3368-android: debug uart id change to uart3
Jianqun Xu [Tue, 21 Mar 2017 07:10:58 +0000 (15:10 +0800)]
arm64: dts: rk3368-android: debug uart id change to uart3

Change earlycon and console to uart3.

Change-Id: I7c6d7322e077b605b209dce4cf51afb26b9147dc
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoarm64: dts: rk3368: hdmi disabled default and remove hdmi node from p9 board
Zorro Liu [Fri, 17 Mar 2017 08:11:56 +0000 (16:11 +0800)]
arm64: dts: rk3368: hdmi disabled default and remove hdmi node from p9 board

Change-Id: I034f119de02a04841b8b70746ef63c73a170988f
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
7 years agoarm64: dts: rockchip: rk3368: xin32k use the fixed clk
Elaine Zhang [Tue, 21 Mar 2017 07:09:17 +0000 (15:09 +0800)]
arm64: dts: rockchip: rk3368: xin32k use the fixed clk

If xin32k use the rk808_clkout1, rk808 init is too late,
xin32k enable count and prepare count is not match with it's child clk.

Change-Id: I314776c5024fdf3373619968582497e0e2d5666f
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
7 years agoarm64: dts: rockchip: enable tsadc node for rk3368 sheep board
Rocky Hao [Fri, 17 Mar 2017 02:27:09 +0000 (10:27 +0800)]
arm64: dts: rockchip: enable tsadc node for rk3368 sheep board

Change-Id: I82c8ef62f5e149d07c76e3a3d971e4222d9b8ecf
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
7 years agoarm64: dts: rockchip: update tsadc node for rk3368
Rocky Hao [Fri, 17 Mar 2017 02:19:05 +0000 (10:19 +0800)]
arm64: dts: rockchip: update tsadc node for rk3368

Change-Id: I0c99dcc6b5515639a496b915832542c3b844f4c8
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
7 years agoarm64: configs: rockchip_defconfig: enable rk3368 thermal
Rocky Hao [Fri, 17 Mar 2017 02:05:44 +0000 (10:05 +0800)]
arm64: configs: rockchip_defconfig: enable rk3368 thermal

Change-Id: Ied2658479d5cccc404623af39da2c6cbe028bae0
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
7 years agothermal: rockchip: add rk3368 support
Rocky Hao [Fri, 17 Mar 2017 01:50:30 +0000 (09:50 +0800)]
thermal: rockchip: add rk3368 support

Change-Id: I970fedca9542c724d777c0bac788300c4fa21303
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
7 years agonvmem: rockchip-efuse: Fix dependencies
Finley Xiao [Mon, 20 Mar 2017 03:18:31 +0000 (11:18 +0800)]
nvmem: rockchip-efuse: Fix dependencies

Not every rockchip efuse depends on ROCKCHIP_SIP, so delete
dependencies in Kconfig. It is more appropriate to add
dependencies for sip_smc_secure_reg_read/write.

Change-Id: I7f551f9fe71ced847657531e3c3cf418766fa3a4
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
7 years agoarm64: dts: rockchip: add RK3399 Firefly Board for Linux Opensource
hero.huang [Wed, 8 Mar 2017 14:41:45 +0000 (22:41 +0800)]
arm64: dts: rockchip: add RK3399 Firefly Board for Linux Opensource

Add Firefly board dts file for Linux Opensource project

Change-Id: Ia525b7ff17f4d74990625e2e02c764996f57e520
Signed-off-by: hero.huang <hero.huang@rock-chips.com>
7 years agoarm64: dts: rk3368-p9: add usb host
Zorro Liu [Fri, 17 Mar 2017 09:29:56 +0000 (17:29 +0800)]
arm64: dts: rk3368-p9: add usb host

Change-Id: Ief0045ac99d3af4db22042d468b67609d6fddf2f
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
7 years agoarm64: dts: rk3368-p9&sheep: disable uart2
Jianqun Xu [Mon, 20 Mar 2017 06:23:19 +0000 (14:23 +0800)]
arm64: dts: rk3368-p9&sheep: disable uart2

Disable uart2 since gpio mux on uart with sdmmc, and rk3368 use
fiq debugger, the uart2 could set to be disabled.

Change-Id: I2d784ccd6cf7526afc0f3bae54914e05febf91a6
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoarm64: dts: rk3368-p9: enable sdmmc
Jianqun Xu [Mon, 20 Mar 2017 06:27:45 +0000 (14:27 +0800)]
arm64: dts: rk3368-p9: enable sdmmc

Change-Id: Ib2849e2af020c744e33f0ab1baefbe50cecaa80b
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
7 years agoMerge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
Alex Shi [Mon, 20 Mar 2017 04:03:10 +0000 (12:03 +0800)]
Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android

7 years ago Merge tag 'v4.4.55' into linux-linaro-lsk-v4.4
Alex Shi [Mon, 20 Mar 2017 04:03:07 +0000 (12:03 +0800)]
 Merge tag 'v4.4.55' into linux-linaro-lsk-v4.4

 This is the 4.4.55 stable release

7 years agoFROMLIST: drm/core: Reuse the reserved member in drm_event_vblank for crtc_id.
Maarten Lankhorst [Wed, 10 Aug 2016 10:46:23 +0000 (12:46 +0200)]
FROMLIST: drm/core: Reuse the reserved member in drm_event_vblank for crtc_id.

When doing a atomic commit affecting multiple crtc's, multiple events
are generated. The user_data member does not allow you to distinguish,
because they all have the same pointer.

I've chosen to use crtc_id, because using pipe would create ambiguity
when pipe = 0. A test for != 0 is easier to implement, and crtc_id
will never be 0.

Change-Id: Ie2daba50f711f298872f15498b8d46dedb38c0ff
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Stone <daniels@collabora.com>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(am from https://patchwork.kernel.org/patch/9272895/)

7 years agoarm64: dts: rk3368-android: enable rga
Zikim,Wei [Sat, 18 Mar 2017 04:18:09 +0000 (12:18 +0800)]
arm64: dts: rk3368-android: enable rga

Change-Id: I869f4bae54f72dc384c644fe3a0a499db2af3dbf
Signed-off-by: Zikim,Wei <wzq@rock-chips.com>
7 years agoarm64: dts: rk3368-sheep: fix sheep backlight
Mark Yao [Fri, 17 Mar 2017 09:49:00 +0000 (17:49 +0800)]
arm64: dts: rk3368-sheep: fix sheep backlight

Change-Id: Ief2603afd33a65158bf6e86f08e53f96573ce486
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>