Commit Graph

600236 Commits

Author SHA1 Message Date
Andy Yan
fe207b3cb8 include: dt-bindings: Add GPIO pin index definition for rockchip pinctrl
Add gpio pin index definition to make it easier to describe
GPIO in dts.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Change-Id: I4aa6c01f96d91fd8ddcb371fd01ca9629f1a3013
2017-03-13 12:44:37 +08:00
Xu Xuehui
81d4a9fdbd net: wireless: rockchip_wlan: update for ap6xxx wifi firmware
bcmdhd driver support ko module or compile into kernel

Change-Id: I260c9d3c3da0a9e249a4ee3883ed3efe03964ddf
Signed-off-by: Xu Xuehui <xxh@rock-chips.com>
2017-03-10 17:42:07 +08:00
Elaine Zhang
0545b1db57 linux: mfd: rk808: fix up the RK818_NUM_REGULATORS
Change-Id: I049286ec7afcaa66ca88458f51a3e0d516121001
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2017-03-10 16:11:05 +08:00
Sean Paul
22f2220668 FROMLIST: 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.

BUG=chrome-os-partner:53565
TEST=Boot device and confirm the modes returned are from panel driver
     instead of EDID

[from https://patchwork.freedesktop.org/patch/107115/]
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/374959
Commit-Ready: Chris Zhong <zyw@rock-chips.com>
Tested-by: Chris Zhong <zyw@rock-chips.com>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>

Change-Id: Ie07dd33e3c121215bf24394cfcb3fff8c7c746a5
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-03-10 16:10:10 +08:00
xiaoyao
2694919094 arm64: rockchip_defconfig: enable CONFIG_BT_RTKBTUSB
Change-Id: I571f3c53cb63a0f5f4d11c2e3dd128d828815b47
Signed-off-by: xiaoyao <xiaoyao@rock-chips.com>
2017-03-10 14:43:35 +08:00
xiaoyao
4d99f97ec0 net: wireless: rockchip: add rtl8822be pcie wifi driver
Change-Id: Ibdc9a9272bf5221b56e2c63b59ffcba41674994c
Signed-off-by: xiaoyao <xiaoyao@rock-chips.com>
2017-03-10 14:41:50 +08:00
Xu Xuehui
e49f8fa707 arm64: rockchip_defconfig: enable CONFIG_WIFI_LOAD_DRIVER_WHEN_KERNEL_BOOTUP
Change-Id: Idd64d6b137dc4bdabfd553bd6912d75a405b6485
Signed-off-by: Xu Xuehui <xxh@rock-chips.com>
2017-03-10 14:37:27 +08:00
Mark Yao
0814e5b4a4 iommu/rockchip: don't do power domain enable on probe
Change-Id: I1484cbe6f7aa4fe358a3223de62a19aabee29d5c
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-03-10 14:23:22 +08:00
Jianqun Xu
141e497420 ARM64: dts: rk3368-android: assigned aclk_vop to 400Mhz
Change-Id: Ie70934cb7046aa96a94e14b251d11e87a98b1512
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2017-03-10 13:57:50 +08:00
Jianqun Xu
f9faa9007b ARM64: dts: rk3368-android: set firmware_class.path=/system/vendor/firmware
It's required by gpu driver, which will load firmware through
/system/vendor/firmware.

If android finds another way to fix it, then can be reverted.

Change-Id: I2fede28f022f10c2e16f68b21159a638a10a53ec
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2017-03-10 12:24:27 +08:00
Jianqun Xu
466ee1ee7b staging: ion: add api to set/get platform device
Change-Id: Ic251497b173608e1f98bf68fbf2b54b75f89c143
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2017-03-10 09:22:28 +08:00
Jianqun Xu
f2c399320e Revert "arm64/dma-mapping: __generic_dma_ops always call swiotlb_dma_ops"
This reverts commit 3e89f7de9a.

Change-Id: I4cf45807f91ab3021b6593f171c1f2573e1ea7f2
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2017-03-10 09:20:41 +08:00
Sugar Zhang
96d9f37fa5 ARM64: dts: rk3399 box: enable hdmi_dp_sound
Change-Id: I04bdec75510b3e47a62a5093fdbd6ec66926e282
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2017-03-09 18:07:01 +08:00
Sugar Zhang
691e4b9187 ARM64: dts: rk3399-android: add hdmi-dp drm audio
this patch register hdmi and dp as one sound card, and compatible
single hdmi audio, single dp audio or both.

Change-Id: I840e6c13f1a0c765a3a9235eb0a798011fc3bf06
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2017-03-09 18:07:00 +08:00
Sugar Zhang
12100a9d84 ARM64: configs: rockchip: enable SND_SOC_ROCKCHIP_HDMI_DP
Change-Id: Icce0802191f2f92913ffc637c50d849bfa79859a
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2017-03-09 18:07:00 +08:00
Sugar Zhang
7058b957e6 drm/rockchip: cdn-dp: return zero when dp is inactive
Change-Id: I741b8ac140014c7f046f59e371ed3ddb245468a2
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2017-03-09 18:06:59 +08:00
Sugar Zhang
cd3e53d593 ASoC: rockchip: add machine driver for built-in hdmi and dp
this patch is used for rockchip built-in HDMI and DP audio output which are
wired to the same i2s line. so we use a DAI link CPU to multicodecs.

Change-Id: Ie8d1ede201a4d4b4cd11c8c05cd1f6177d844957
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2017-03-09 18:06:59 +08:00
Kuninori Morimoto
07f270f297 UPSTREAM: ASoC: soc-core: snd_soc_get_dai_name() become non static
snd_soc_get_dai_name() is used from snd_soc_of_get_dai_name(),
and it is assuming that DT is using "sound-dai" / "#sound-dai-cells".
But graph base DT is using "remote-endpoint". This patch makes
snd_soc_get_dai_name() non static for graph support.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
(cherry picked from commit 1ad8ec535b)

Change-Id: If99dcbfa722f09e3238cfafb5dc2803b6636a2e0
2017-03-09 18:06:59 +08:00
Frank Wang
c2b3e8740d arm64: dts: rockchip: amend usb-otg related nodes for rk3368-tb
This adds move some common properties of usb-otg from dts to dtsi.

Change-Id: I84355433b5ca63cc0b763d66dcdbb38897635418
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
2017-03-09 15:01:13 +08:00
Nickey Yang
fff8ad7caa ARM: dts: rockchip: use hdmi-ddc for ddc bus in rk3288
Using the builtin I2C controller in dw_hdmi is better than using the
normal RK3288 I2C controller(I2C5).

Test: work normally when switch mode between 4K@60hz|4K@30hz|1080P..
Change-Id: Ifb4b72ca5649efb0cc3055f2db34ebbcc2377c4c
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
2017-03-09 15:00:25 +08:00
Nickey Yang
d5eab5f17b arm64: dts: rockchip: use hdmi-ddc for ddc bus in rk3399
Using the builtin I2C controller in dw_hdmi is better than using the
normal RK3399 I2C controller(I2C3).

Change-Id: I6a2de7221263e8564f7cca56ea5c52e1a133c138
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
2017-03-09 15:00:17 +08:00
Nickey Yang
7d8946a76e FROMLIST: drm/bridge: dw_hdmi: support i2c extended read mode
"I2C Master Interface Extended Read Mode" implements a segment
pointer-based read operation using the Special Register configuration.

This patch fix https://patchwork.kernel.org/patch/7098101/ mentioned
"The current implementation does not support "I2C Master Interface
Extended Read Mode" to read data addressed by non-zero segment
pointer, this means that if EDID has more than 1 extension blocks"

With this patch,dw-hdmi can read EDID data with 1/2/4 blocks.

(am from https://patchwork.kernel.org/patch/9586343/)

BUG=chrome-os-partner:59768
TEST=fievel can read 1/2/4 blocks EDID data

Change-Id: I086e6ea63ec69c0532be445b958ce253a7f1f3cc
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
Reviewed-on: https://chromium-review.googlesource.com/442308
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2017-03-09 14:54:43 +08:00
Huang Jiachai
1eb011849f video: rockchip: vop: add ourput color bt601, bt709, bt2020
Change-Id: I0b679244817f1a524d6f834ade32dce1666a6352
Signed-off-by: Huang Jiachai <hjc@rock-chips.com>
(cherry picked from commit b76f11e6652a825fd4cb7798ec3fe06c60587338)
2017-03-09 14:53:58 +08:00
wlq
65bacce134 arm64: dts: rk3399: sapphire-excavator: enabled hdmi sound
Change-Id: If95f0b885aa3afdbaa985b4b39628502075be90e
Signed-off-by: wlq <wlq@rock-chips.com>
2017-03-09 14:53:30 +08:00
Elaine Zhang
375759473a clk: rockchip: rk3368: add CLK_IGNORE_UNUSED flag for mcu clk
Change-Id: I27856c9523ac3bffd4b509f016a659a1e3094b41
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2017-03-09 14:46:06 +08:00
Boris Brezillon
32ce428bc8 UPSTREAM: pwm: Use pwm_get/set_xxx() helpers where appropriate
Use pwm_get/set_xxx() helpers instead of directly accessing the pwm->xxx
field. Doing that will ease adaptation of the PWM framework to support
atomic update.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
(cherry picked from commit 4b58896f72)

Change-Id: Ic6bdaf2017bb292ef920604fba86805999cebf0c
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2017-03-09 09:36:59 +08:00
Huang, Tao
745c694a60 arm64: dts: rockchip: sync pmugrf with upstream for rk3399
Change-Id: I0b023824265418c72413e6702fbc5592eba0dc4e
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2017-03-09 09:22:24 +08:00
Huang, Tao
f42f9e683c arm64: dts: rockchip: rename ethernet node name for rk3399
Same as upstream.

Change-Id: I737f7974d01a22abc697483956db795e7e151fe0
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2017-03-08 18:51:40 +08:00
Brian Norris
cac616b624 UPSTREAM: arm64: dts: rockchip: add rk3399 thermal_zones phandle
We're going to need to amend this table in board files.

Signed-off-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
(cherry picked from commit 647cea2e68)

Change-Id: Ife7affa44554622b1b35ad6756cef78d22c69a3a
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2017-03-08 18:49:05 +08:00
Huang, Tao
507fc2f4ff arm64: dts: rockchip: reorder some nodes for rk3399
keep order as upstream.

Change-Id: I52e0dfe97f0d12c550603675085a66346529794d
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2017-03-08 18:32:18 +08:00
Elaine Zhang
19c26002e1 ARM64: dts: rockchip: rk3399: change the pll init freq
set npll init freq 600M
set gpll init freq 800M

Change-Id: I110cc4b4051504dd875712bce9e473f74d8578b4
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2017-03-08 16:31:30 +08:00
David Wu
aa060ee958 pwm: rockchip: Fix the warning for rockchip_linux_defconfig
This patch fix the following warning:
drivers/pwm/pwm-rockchip.c:176:6: warning: unused variable 'ret' [-Wunused-variable]

Change-Id: I9ac08ad08fdefee5b875d36592936b07f032586c
Signed-off-by: David Wu <david.wu@rock-chips.com>
2017-03-08 16:17:30 +08:00
Xu Xuehui
8286a41a20 net: wireless: rockchip_wlan: update realtek wifi support
support wifi driver work as ko module or compile into kernel

1. wifi driver work as ko module, configs show as below:

CONFIG_WIFI_LOAD_DRIVER_WHEN_KERNEL_BOOTUP=n
CONFIG_RTL8188EU = m and CONFIG_RTL8188FU = m

2. wifi driver compile into kernel, configs show as below:
ps: Only one Realtek driver can be compiled into the kernel
CONFIG_WIFI_LOAD_DRIVER_WHEN_KERNEL_BOOTUP=y
CONFIG_RTL8188EU = y or CONFIG_RTL8188FU = y

Change-Id: I40e33a6f27597f9f90d9987d189b74fb637c40c1
Signed-off-by: Xu Xuehui <xxh@rock-chips.com>
2017-03-08 15:08:10 +08:00
Huang zhibao
266e09781e arm64: dts: rockchip: rk3399: set ir irq handle on cpu1
Change-Id: I89f75184af810a050f6ca09daeba17774af4465e
Signed-off-by: Huang zhibao <hzb@rock-chips.com>
2017-03-08 14:25:15 +08:00
Mark Yao
f4fdb5f5cc drm/rockchip: vop: fix background color on yuv domain
On yuv domain, background need use 10bit yuv format.

Change-Id: I02fe3894ac12b509e22c0d90977bcb7e4535c16d
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-03-07 18:43:15 +08:00
Zheng Yang
27e143efd7 drm/rockchip: dw_hdmi: support ROCKCHIP_OUT_MODE_YUV420
VOP output mode and bus_format must be ROCKCHIP_OUT_MODE_YUV420
and MEDIA_BUS_FMT_YUV8_1X24 when display mode has a YCbCr420
flag.

Change-Id: Ib2d51c119f5a8f1b8a9285c47ab228b22a293d56
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2017-03-07 18:42:40 +08:00
Zheng Yang
87489b0eeb drm: bridge/dw_hdmi: support HDMI 2.0 YCbCr 4:2:0
Change-Id: I21fe667e8beeaf2f9b46fce043b6e14b366a3e05
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2017-03-07 16:50:06 +08:00
Elaine Zhang
0623798544 ARM64: dts: rockchip: rk3368: add ramp-delay for syr82x dcdc
Change-Id: I61ef71b32aa708123909124b89f61e8a8f3a1bb7
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2017-03-07 16:03:11 +08:00
Elaine Zhang
d0d722eff1 mfd: rk818: use rk808-regulator
Change-Id: Ib7150f229a4682b6d0f4c5a6776a9ebc8565d221
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2017-03-07 16:03:03 +08:00
Zheng Yang
6623cc6b99 drm: redefine YCbCr420 flag to bits 23:24
Since bits[19:22] have been used for picture aspect ratio
in upstream patch 876f43c073.
We define YCbCr420 flag to the subsequent bits.

Change-Id: I2eff8b51227fc7beb4f587e90bc070ae865ba9d4
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2017-03-07 15:29:43 +08:00
Zheng Yang
7ad79f3fed UPSTREAM: drm: add picture aspect ratio flags
This patch adds drm flag bits for aspect ratio information

Currently drm flag bits don't have field for mode's picture
aspect ratio. This field will help the driver to pick mode with
right aspect ratio, and help in setting right VIC field in avi
infoframes.

V2: Addressed review comments from Sean
- Changed PAR-> PIC_AR
V3: Rebase
V3: Added r-b by Jose

Signed-off-by: Shashank Sharma <shashank.sharma@intel.com>
Reviewed-by: Jim Bride <jim.bride@linux.intel.com>
Reviewed-by: Jose Abreu <Jose.Abreu@synopsys.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1476705880-15600-2-git-send-email-shashank.sharma@intel.com

(cherry picked from commit 876f43c073)
Change-Id: I7dc4d82722d4824ba2b6c041080373175b8f6d18
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2017-03-07 11:56:18 +08:00
Simon
e81c6035cd drm/rockchip: gem: reorder pages if page chunk less than 8
Change-Id: I03a91d2f9c017086b3cb35edeaf6b7913b147b9b
Signed-off-by: Simon <xxm@rock-chips.com>
2017-03-07 10:05:10 +08:00
Simon
146a7efaaa ARM64: dts: rk3399: Add pd/clk for iommu
Change-Id: I6da7372e82a031140fead601a0661260be75855b
Signed-off-by: Simon <xxm@rock-chips.com>
2017-03-07 10:04:46 +08:00
Mark Yao
7fd55b9ff4 drm/rockchip: support YUV420 output mode
Change-Id: I7b991c544df6da81be93d84febe59fc5089895ca
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-03-07 09:59:28 +08:00
Mark Yao
8a4cea2741 drm/rockchip: vop: fixup color space table
Change-Id: Ia3c14602ffe837efd2fb4dcf8d3dd2c0960cfce6
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-03-07 09:59:01 +08:00
Jung Zhao
0d6369952d video: rockchip: vcodec: add reg_rlc inside dec_pp
dec_pp also need to remap input fd.

Change-Id: Ic19a14a5ccc002b5be36d90ec3114244d5e494aa
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
2017-03-06 18:53:01 +08:00
Elaine Zhang
054a12a3c0 ARM64: dts: rockchip: rk3399: invert the pwm polarity
invert the pwm polarity for new pwm interface

Change-Id: I8dfde14fbc4fd4aa907722f260ce72fdb4d7d3bb
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2017-03-06 18:45:12 +08:00
David Wu
4e0a0f8110 video: backlight: pwm_bl: Fix the bug of Splashing screen when boot
The pwm_apply_args() should be removed when switching to the atomic
PWM API. Oherwise, the screen would splashing as the backlight is
disabled once when boot.

Change-Id: I0cadd471db54140192c39b9d7c6a673862e8f8d8
Signed-off-by: David Wu <david.wu@rock-chips.com>
2017-03-06 18:28:40 +08:00
david.wu
00537de90c pwm: rockchip: State of pwm clock should synchronize with pwm enabled state
If the pwm was not enabled at uboot loader, pwm could not work for clock
always disabled at pwm driver. The pwm clock is enabled at beginning of
pwm_apply(), but disabled at end of pwm_apply().

If the pwm was enabled at uboot loader, pwm clock is always enabled unless
closed by ATF. The pwm-backlight might turn off the power at early suspend,
should disable pwm clock for saving power consume.

It is important to provide opportunity to enable/disable clock at pwm driver,
the pwm consumer should ensure correct order to call pwm enable/disable, and
pwm driver ensure state of pwm clock synchronized with pwm enabled state.

Change-Id: I545db81eb638957567abacb93fd06fff9dd7181b
Fixes: 2bf1c98aa5 ("pwm: rockchip: Add support for atomic update")
Signed-off-by: David Wu <david.wu@rock-chips.com>
2017-03-06 18:28:40 +08:00
Brian Norris
22f81326b5 UPSTREAM: pwm: cros-ec: Add __packed to prevent padding
While the particular usage in question is likely safe (struct
cros_ec_command is 32-bit aligned, followed by <= 32-bit fields), it's
been suggested this is not a great pattern to follow for the general
case -- for example, if we follow a 'struct cros_ec_command' (which is
32-bit- but not 64-bit-aligned) with a struct that starts with a 64-bit
type (e.g., u64), the compiler may add padding.

Let's add __packed, to inform the compiler of our true intention -- to
have no padding between these struct elements -- and to future proof for
any refactorings that might occur.

Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
(cherry picked from commit 065cfbbb63)

Change-Id: Iddd499863dde168679a88c2f9ecc461316b417a0
Signed-off-by: David Wu <david.wu@rock-chips.com>
2017-03-06 18:28:40 +08:00