Commit Graph

592865 Commits

Author SHA1 Message Date
John Keeping
ec4cbab9bb UPSTREAM: drm/rockchip: vop: fix mask when updating interrupts
Commit dbb3d94 (drm/rockchip: vop: move interrupt registers into
vop_data) introduced new macros for updating the interrupt control
registers but these always use the mask from the register definition
without refining it for the particular bits that are being changed.

This means that whenever we enable/disable a particular interrupt we end
up disabling all of the others as a side effect.

Change-Id: I3b0f2574315f3655c183c21143b0bca7cdd9f6fa
Signed-off-by: John Keeping <john@metanate.com>
(cherry picked from commit c7647f8681)
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2016-03-17 09:42:05 +08:00
Mark Yao
9de6f30164 UPSTREAM: drm/rockchip: Don't build rockchip_drm_vop as modules
rockchip_drm_vop's module init had moved to rockchip_vop_reg.c
so no need to build rockchip_drm_vop.ko

Change-Id: I36da6a2741a250f3344b9febcd0c74539a861798
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit ce90d092bc)
2016-03-17 09:42:04 +08:00
Chris Zhong
93a34472c4 UPSTREAM: drm: rockchip: Support Synopsys DW MIPI DSI
Add support for Synopsys DesignWare MIPI DSI controller which is
embedded in the rk3288 SoCs.

Change-Id: Ic450633c683520361926a676191426349376803e
Signed-off-by: Chris Zhong <zyw@rock-chips.com>
Acked-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit 84e05408fc)
2016-03-17 09:42:04 +08:00
Chris Zhong
d6fce1adfb UPSTREAM: drm/rockchip: return a true clock rate to adjusted_mode
Since the mipi dsi driver need to use the clock of vop to make the
calculation of Blanking. But sometimes the clock driver can not set a
accurate clock_rate for vop, get it by clk_round_rate before mode_set,
so we can get the true value.

Change-Id: I04e6a499763258c2e16a09e3a59cf3a1e4593706
Signed-off-by: Chris Zhong <zyw@rock-chips.com>
Acked-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit b59b8de314)
2016-03-17 09:42:04 +08:00
Stephen Rothwell
ca49d45391 UPSTREAM: drm/rockchip: vop: export vop_component_ops to modules
Fixes: a67719d182 ("drm/rockchip: vop: spilt register related into rockchip_reg_vop.c")

Change-Id: I4c855f65e684c08f8648547dcf16aa657c6ae5db
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Acked-by: Mark Yao <mark.yao@rock-chips.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 54255e818e)
2016-03-17 09:42:04 +08:00
Mark Yao
4e5345ff3b UPSTREAM: drm/rockchip: vop: add rk3036 vop support
RK3036 registers layout is quite difference with rk3288 layout,
The IC design with different framework, rk3036 vop is VOP LITE,
and rk3288 is VOP FULL.

RK3036 support two overlay plane and one hwc plane, max output
resolution is 1080p. it support IOMMU, and its IOMMU same as
rk3288's.

Change-Id: Ib713b252dc6f2d4bffa3183698768c6f23236ccf
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit f767345350)
2016-03-17 09:42:04 +08:00
Mark Yao
21464efe46 UPSTREAM: drm/rockchip: vop: spilt scale regsters
There are two version scale control register found on vop,
scale full version found on rk3288, support extension registers.
and scale little version found on rk3036, only support common scale.

Change-Id: Iea1f253f363e062d49390fa51c304a2c109c39c6
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit 1194fffbb1)
2016-03-17 09:42:03 +08:00
Mark Yao
62b17da2e9 UPSTREAM: drm/rockchip: vop: spilt register related into rockchip_reg_vop.c
No functional updates. Spilt register related into another file
would be nice to multi vop driver,

Change-Id: I811b12a57b03c24eb420d0c3fa0833f412bd258c
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit a67719d182)
2016-03-17 09:42:03 +08:00
Mark Yao
d0084393a3 UPSTREAM: drm/rockchip: vop: move interrupt registers into vop_data
Move interrupt registers into vop_data, so it can use at multi-vop driver

Change-Id: I3183fb3c97e76d58dbdab2f2df34480ee2e74b31
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit dbb3d94444)
2016-03-17 09:42:03 +08:00
Mark Yao
0f44d52e99 UPSTREAM: drm/rockchip: vop: merge vop cfg_done into vop_data
Move cfg_done register into vop_data, so it can use at multi-vop driver

Change-Id: Id92d69302a4fc9e28b96099bf0297674f2abfb33
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit 0cf33fe33d)
2016-03-17 09:42:03 +08:00
Mark Yao
677bddace8 UPSTREAM: drm/rockchip: dw_hdmi: use encoder enable function
encoder.enable is more compatible to atomic api than encoder.prepare/commit

Change-Id: Idacd1c44df94110b4a4b2cc66be9ce0eda8a2ad9
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit a8eef71d38)
2016-03-17 09:42:03 +08:00
Mark Yao
f7a6661050 UPSTREAM: drm/rockchip: direct config connecter gate and out_mode
Both connecter gate and out_mode are not conflict with mode set
configure. Direct setting connecter gate and out_mode, that allow
connector do rockchip_drm_crtc_mode_config after mode set.

Change-Id: I6f7af59b7cbff2ae55830f31155e34e041cc74f8
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit d0e20d0ebf)
2016-03-17 09:42:03 +08:00
Mark Yao
621c4cad77 UPSTREAM: drm/rockchip: support atomic asynchronous commit
If drm core requests a async commit, rockchip_drm_atomic_commit
will schedule a work task to update later.

Change-Id: I8d35b157b817f2e7f810968e7b18043414cb17e6
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit f32fad51ee)
2016-03-17 09:42:02 +08:00
Mark Yao
9620fd7584 UPSTREAM: drm/rockchip: Optimization vop mode set
Rk3288 vop timing registers is immediately register, when configure
timing on display active time, will cause tearing. use dclk reset is
not a good idea to avoid this tearing. we can avoid tearing by using
standby register.

Vop standby register will take effect at end of current frame, and
go back to work immediately when exit standby.

So we can use standby register to protect this context.

Change-Id: Ib65433900c67f9fbd3957c4b0506d6172474e5c2
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit ce3887ed0d)
2016-03-17 09:42:02 +08:00
Mark Yao
93fe6e6cc0 UPSTREAM: drm/rockchip: Convert to support atomic API
Rockchip vop not support hw vblank counter, needed check the committed
register if it's really take effect.

Change-Id: Ia291cdf75bc2f7397881f0e5f42debeae1c04f03
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit 63ebb9fa7f)
2016-03-17 09:42:02 +08:00
Mark Yao
23d32fda3c UPSTREAM: drm/rockchip: vop: replace dpms with enable/disable
For vop, power by enable/disable is more suitable then legacy dpms
function, and enable/disable more closely to the new atomic API.

Change-Id: Ief6e31f023a2e2af84aba773edac51fccd487a2c
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit 0ad3675d9c)
2016-03-17 09:42:02 +08:00
Mark Yao
853cbcbadb UPSTREAM: drm/rockchip: Use new vblank api drm_crtc_vblank_*
No functional update, drm_vblank_* is the legacy version of
drm_crtc_vblank_*. and use new api make driver more clean.

Change-Id: Ia93ec8124333d59446d1507f7567be2775bea144
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
(cherry picked from commit b5f7b75503)
2016-03-17 09:42:02 +08:00
Ville Syrjälä
52fb48a3d6 UPSTREAM: drm/rockchip: Constify function pointer structs
Moves a bunch of junk to .rodata from .data.

 drivers/gpu/drm/rockchip/dw_hdmi-rockchip.ko:
-.rodata                      772
+.rodata                      828
-.data                        148
+.data                         92

 drivers/gpu/drm/rockchip/rockchipdrm.ko:
-.rodata                      748
+.rodata                      760
-.data                        448
+.data                        436

Change-Id: Ic93fc8d334a51618ea8075b4344983b795c7623e
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1450178476-26284-25-git-send-email-boris.brezillon@free-electrons.com
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 28c508ece6)
2016-03-17 09:42:01 +08:00
Ville Syrjälä
a91606afb1 UPSTREAM: drm: Pass 'name' to drm_encoder_init()
Done with coccinelle for the most part. However, it thinks '...' is
part of the semantic patch, so I put an 'int DOTDOTDOT' placeholder
in its place and got rid of it with sed afterwards.

@@
identifier dev, encoder, funcs;
@@
 int drm_encoder_init(struct drm_device *dev,
                      struct drm_encoder *encoder,
                      const struct drm_encoder_funcs *funcs,
                      int encoder_type
+                     ,const char *name, int DOTDOTDOT
                      )
{ ... }

@@
identifier dev, encoder, funcs;
@@
 int drm_encoder_init(struct drm_device *dev,
                      struct drm_encoder *encoder,
                      const struct drm_encoder_funcs *funcs,
                      int encoder_type
+                     ,const char *name, int DOTDOTDOT
                      );

@@
expression E1, E2, E3, E4;
@@
 drm_encoder_init(E1, E2, E3, E4
+                 ,NULL
                  )

v2: Add ', or NULL...' to @name kernel doc (Jani)
    Annotate the function with __printf() attribute (Jani)

Change-Id: Id28ae2a6848fe1bd46905287b68f5d2c61d70039
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1449670818-2966-1-git-send-email-ville.syrjala@linux.intel.com
(cherry picked from commit 13a3d91f17)
2016-03-17 09:42:01 +08:00
Ville Syrjälä
89df2e6a60 UPSTREAM: drm: Pass 'name' to drm_universal_plane_init()
Done with coccinelle for the most part. It choked on
msm/mdp/mdp5/mdp5_plane.c like so:
"BAD:!!!!!  enum drm_plane_type type;"
No idea how to deal with that, so I just fixed that up
by hand.

Also it thinks '...' is part of the semantic patch, so I put an
'int DOTDOTDOT' placeholder in its place and got rid of it with
sed afterwards.

I didn't convert drm_plane_init() since passing the varargs through
would mean either cpp macros or va_list, and I figured we don't
care about these legacy functions enough to warrant the extra pain.

@@
typedef uint32_t;
identifier dev, plane, possible_crtcs, funcs, formats, format_count, type;
@@
 int drm_universal_plane_init(struct drm_device *dev,
                              struct drm_plane *plane,
                              unsigned long possible_crtcs,
                              const struct drm_plane_funcs *funcs,
                              const uint32_t *formats,
                              unsigned int format_count,
                              enum drm_plane_type type
+                             ,const char *name, int DOTDOTDOT
                              )
{ ... }

@@
identifier dev, plane, possible_crtcs, funcs, formats, format_count, type;
@@
 int drm_universal_plane_init(struct drm_device *dev,
                              struct drm_plane *plane,
                              unsigned long possible_crtcs,
                              const struct drm_plane_funcs *funcs,
                              const uint32_t *formats,
                              unsigned int format_count,
                              enum drm_plane_type type
+                             ,const char *name, int DOTDOTDOT
                              );

@@
expression E1, E2, E3, E4, E5, E6, E7;
@@
 drm_universal_plane_init(E1, E2, E3, E4, E5, E6, E7
+                         ,NULL
                          )

v2: Split crtc and plane changes apart
    Pass NUL for no-name instead of ""
    Leave drm_plane_init() alone
v3: Add ', or NULL...' to @name kernel doc (Jani)
    Annotate the function with __printf() attribute (Jani)

Change-Id: I65fa347937ec17d21ac3fa28ec9c58c3ce97d496
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1449670795-2853-1-git-send-email-ville.syrjala@linux.intel.com
(cherry picked from commit b0b3b79511)
2016-03-17 09:42:01 +08:00
Ville Syrjälä
d8bb13d947 UPSTREAM: drm: Pass 'name' to drm_crtc_init_with_planes()
Done with coccinelle for the most part. However, it thinks '...' is
part of the semantic patch, so I put an 'int DOTDOTDOT' placeholder
in its place and got rid of it with sed afterwards.

I didn't convert drm_crtc_init() since passing the varargs through
would mean either cpp macros or va_list, and I figured we don't
care about these legacy functions enough to warrant the extra pain.

@@
identifier dev, crtc, primary, cursor, funcs;
@@
 int drm_crtc_init_with_planes(struct drm_device *dev,
                               struct drm_crtc *crtc,
                               struct drm_plane *primary, struct drm_plane *cursor,
                               const struct drm_crtc_funcs *funcs
+                              ,const char *name, int DOTDOTDOT
                               )
{ ... }

@@
identifier dev, crtc, primary, cursor, funcs;
@@
 int drm_crtc_init_with_planes(struct drm_device *dev,
                               struct drm_crtc *crtc,
                               struct drm_plane *primary, struct drm_plane *cursor,
                               const struct drm_crtc_funcs *funcs
+                              ,const char *name, int DOTDOTDOT
                               );

@@
expression E1, E2, E3, E4, E5;
@@
 drm_crtc_init_with_planes(E1, E2, E3, E4, E5
+                          ,NULL
                           )

v2: Split crtc and plane changes apart
    Pass NULL for no-name instead of ""
    Leave drm_crtc_init() alone
v3: Add ', or NULL...' to @name kernel doc (Jani)
    Annotate the function with __printf() attribute (Jani)

Link: http://patchwork.freedesktop.org/patch/msgid/1449670771-2751-1-git-send-email-ville.syrjala@linux.intel.com
(cherry picked from commit f98828769c)

Change-Id: I8eb2a67b3a01bd0cb49e552f05a5ee5c6ac99d40
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2016-03-17 09:42:01 +08:00
David Wu
ca441690cf ARM64: dts: rockchip: add io-domain support for rk3399-tb
Change-Id: Ib72983eb50c416649a35be4393a889bc72e2457a
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 20:29:56 +08:00
David Wu
bd7cad0698 ARM64: dts: rockchip: add backlight support for rk3399-tb
Change-Id: I99314db0fe7a31b4bb652749c35c738100bdf344
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 20:29:10 +08:00
David Wu
4d64919ca1 ARM64: dts: rockchip: add key support for rk3399-monkey
Change-Id: I1897555009fae4401d52eab443b59ff572b43879
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 20:28:45 +08:00
David Wu
2d42010d2d POWER: AVS: rockchip: add rk3399 io domain support
Change-Id: If4ccc31372f1cdbea84fc27009c1b8f9238ee1e9
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 20:28:09 +08:00
Huang, Tao
564ff29ab3 ARM64: dts: rk3366: add pmu node
Change-Id: I8ab43d9d6a1361ba1546363c4d16cfa3f87b3e3c
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2016-03-16 18:21:44 +08:00
Huang, Tao
33edbc6b60 ARM64: dts: rk3399: sort nodes and fix spi reg
Change-Id: Icb71adf3ebfcee57be46886672a0fe1afe77473f
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2016-03-16 17:56:39 +08:00
Elaine Zhang
e63146d4cf ARM64: dts: rockchip: add pmic node for RK3399
add pmic rk808 node for rk3399.
add pwm regulator node for rk3399.

Change-Id: I00b33363ba513064eb0a235c646df9a46062941c
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-03-16 17:25:44 +08:00
Huang, Tao
99b46d5254 ARM64: rockchip_defconfig: enable selinux
Change-Id: I0142795593483474ee157ed2d64cc0fb18f2ef44
Fixes: 361ddf2d69 ("arm64: rockchip: rockchip_defconfig updates for 4.4")
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
2016-03-16 16:36:05 +08:00
Frank Wang
9dd79fc502 ARM64: dts: rockchip: add USB2.0 host nodes for rk3399
Change-Id: Id18a8b43210e439add8c5af8a18a3a62e0d06cc9
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
2016-03-16 15:26:33 +08:00
Jianqun Xu
d7834b46fa ARM64: dts: rockchip: add dts files for rk3399
The dts files include three level:
- rk3399.dtsi
  includes nodes who closed to SoC, such as cpu\pmu\cru\i2c\pinctl\iommu...

- rk3399-tb.dtsi
  includes nodes who required by main board, they are common nodes for both
  chromeos and android; also to enable node from rk3399.dtsi if needs

- rk3399-monkey.dts
  used by evb board with android system

- rk3399-chrome.dts
  used by evb board with chromeos system

Change-Id: I02e21a8d184e74c96807f3b8b72075d466e1027f
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2016-03-16 15:04:37 +08:00
huweiguo
baa727d837 arm64: dts: rk3366-tb: add bt node and enable it
Change-Id: I2969aed08d0ca822d717c13680af71630bd57699
Signed-off-by: huweiguo <hwg@rock-chips.com>
2016-03-16 14:44:56 +08:00
Elaine Zhang
4f487054f7 ARM64: dts: rockchip: add power domain node for RK3399 Soc
add pd node for RK3399 Soc
create power domain tree

Change-Id: I5a455034f56b6d88860c3ed2decd8c6dc94896a3
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-03-16 14:25:35 +08:00
Shawn Lin
a268d44bf0 ARM64: dts: rockchip: add emmc, sdio and sdmmc node for rk3399
This patch add emmc, sdio and sdmmc node to support
mmc stuff on rk3399 platform.

Change-Id: I717855dded5f5161127ba29e34b9ff2106009c55
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
2016-03-16 14:15:46 +08:00
Shawn Lin
a102978d92 phy: rockchip-emmc: fix compile issue on arm64 platform
This patch rename "reg" property to "reg_offset".
We rename it to fix the compile issue on ARM64 platform:
(reg_format): "reg" property in /phy has invalid length (4 bytes)
(#address-cells == 2, #size-cells == 2)

This's because "reg" is very special one which should keep the
*-cells with its parent node and can't be overwrited even if we
do that explicitly. On 32-bit plafform, the default *-cells
fit for what we assign to "reg". But that's not correct for 64-bit
platform. So we can see two possible solutions to fix this problem:
A) make phy-rockchip-emmc as a child phy node and overwrite its
parent's #address-cells and #size-cells.
B) avoid using this special property.

we use it just for passing on a offset for different Socs, and there's
no requirement to change the code to make phy-rockchip-emmc as a child
node. so choose option B) is sane.

Change-Id: Ib6a10cb8c3629ec3983854f1bfb7c2426edf79d2
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
2016-03-16 14:13:06 +08:00
Shawn Lin
6ad7fb4206 ARM64: rockchip_defconfig: enable sdhci controller
Change-Id: Iec8f07c898ed651f662847d0605954f3c356c55e
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
2016-03-16 14:12:13 +08:00
David Wu
d39e0ad771 pwm: rockchip: add pwm support for rk3399
Change-Id: I0658d1b69b5799c2ef6604563c41b5a0d87ddce2
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 14:11:31 +08:00
David Wu
8816005f35 ARM64: dts: rockchip: add saradc support for rk3399
Change-Id: I786e6efe31a45568d581baf09093f56409c0151f
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 14:09:36 +08:00
David Wu
211e773a63 ARM64: dts: rockchip: add pwm support for rk3399
Change-Id: I243cbf417cf78f39b97e12f66c916502fe72fe31
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 14:09:11 +08:00
David Wu
f7609e2590 ARM64: dts: rockchip: add i2c node for rk3399
Change-Id: I3a662d25927fc9c2c4f756963f1522c24fce70d6
Signed-off-by: David Wu <david.wu@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2016-03-16 14:08:21 +08:00
David Wu
00a00a1ff0 iio: adc: rockchip_saradc: add saradc support for rk3399
Change-Id: I1d60583f02cc4b4cac8a8a1c1fb22bfeb5e52647
Signed-off-by: David Wu <david.wu@rock-chips.com>
2016-03-16 14:06:50 +08:00
xiaoyao
2f9c9cd46e net: rkwifi: Modify driver loading way to reduce boot time
Change-Id: Ie569aeedb5544cb0131ab48818db6a5b0dde05bb
Signed-off-by: xiaoyao <xiaoyao@rock-chips.com>
2016-03-16 11:17:22 +08:00
Zhaoyifeng
85da5ca07a ARM64: dts: rk3366-tb: enable nandc
Change-Id: I2b563214e9ad276524f555a31a408c8995cb63a9
Signed-off-by: Zhaoyifeng <zyf@rock-chips.com>
2016-03-16 10:06:52 +08:00
Zhaoyifeng
8613805fc7 arm64: configs: rockchip_defconfig add nand driver
Change-Id: I3bccfe5710c860841714d6e54aa23ed075d5a584
Signed-off-by: Zhaoyifeng <zyf@rock-chips.com>
2016-03-16 10:06:19 +08:00
huweiguo
f99458ca37 net: rfkill-bt: auto compatible for uart rts control for all uart bt chip
Change-Id: I9b4d6614160285754ee86c427e8918296b92ddbd
Signed-off-by: huweiguo <hwg@rock-chips.com>
2016-03-15 19:38:01 +08:00
Zhaoyifeng
3cbba607a8 ARM64: nand: update nand drvier for 3366
Change-Id: I96ff59f331591807f8d5b009c933a6c71f62a93b
Signed-off-by: Zhaoyifeng <zyf@rock-chips.com>
2016-03-15 18:56:30 +08:00
Shengfei xu
050039bbaa ARM64: rockchip_defconfig: enable rk808 rtc
add CONFIG_RTC_DRV_RK808=y

Change-Id: I7aae9990c9bbf787a7e42e319116df6b4749c3cd
Signed-off-by: Shengfei xu <xsf@rock-chips.com>
2016-03-15 18:05:32 +08:00
Xing Zheng
85e725256d UPSTREAM: clk: rockchip: add new pll-type for rk3399 and similar socs
The rk3399's pll and clock are similar with rk3036's, it different
with base on the rk3066(rk3188, rk3288, rk3368 use it), there are
different adjust foctors and control registers, so these should be
independent and separate from the series of rk3066s.

Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
(cherry picked from git.kernel.org mmind/linux-rockchip.git
v4.7-clk/next commit 95e0c473a0ac1bdac25f55678dc602eb50dae684)

Change-Id: I77872b5fb33eb92402e9036b97b185ea56eb45c6
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-03-15 17:51:57 +08:00
Shawn Lin
6e7ff899c2 UPSTREAM: clk: rockchip: release io resource when failing to init clk
We should call iounmap to relase reg_base since it's not going
to be used any more if failing to init clk.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
(cherry picked from git.kernel.org mmind/linux-rockchip.git
v4.7-clk/next commit 86609a6613c64ee9272da1fd2f578d4beab2174e)

Conflicts:

	drivers/clk/rockchip/clk-rk3228.c
[zx: there is no rk3228 clock controller, and apply this patch for
clk-rk3366 manually.]

Change-Id: I2d73c90eb6f43150725c81417af37a6a562cd329
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-03-15 17:49:31 +08:00
Shawn Lin
d73b398d05 UPSTREAM: clk: rockchip: remove redundant checking of device_node
rockchip_clk_of_add_provider is used by sub-clk driver which
already call of_iomap before calling it. If device_node does
not exist, of_iomap returns NULL which will fail to init the
sub-clk driver. So really it's redundant.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
(cherry picked from git.kernel.org mmind/linux-rockchip.git
v4.7-clk/next commit a96edf5a5243e1bdf642492b783221aa498f1e49)

Change-Id: I9a51ed269fe26742da2ae84d99cf9689f49add1b
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-03-15 17:48:56 +08:00