Commit Graph

593751 Commits

Author SHA1 Message Date
Jianqun Xu
96576852a7 ARM64: dts: rk3399: rename dts files
Rename the rk3399 dts files:
    rk3399-monkey.dts -> rk3399-evb1-android.dts
    rk3399-chrome.dts -> rk3399-evb1-cros.dts
    rk3399-tb.dtsi -> rk3399-evb.dtsi

Change-Id: Ie1f61d63b8fefc263a64d713d70947ceee8472c5
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2016-04-19 10:31:06 +08:00
Xing Zheng
88a43f2f1a clk: rockchip: rk3399: Export isp clock IDs
Change-Id: I6f8a2192d6f69b23ba4fa3ad6e973aba9120399a
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-19 10:29:13 +08:00
Xing Zheng
56291663d1 clk: rockchip: rk3399: Add and export SCLK_RGA_CORE clock id
Change-Id: Ia64289f565e7b4570c6b55810bda5d4711a7381a
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-19 10:27:18 +08:00
Wu Liang feng
06ed11d415 usb: gadget: composite: don't queue OS desc request if req length is invalid
In OS descriptors handling, if ctrl->bRequestType is USB_RECIP_DEVICE
and w_index != 0x4 or (w_value >> 8) is true, it will not reset
req->length, but use the default value(-EOPNOTSUPP), and queue an
OS desc request with an invalid req->length. It always happens
on the platforms which use os_desc(for example: rk3366,rk3399),
and cause kernel panic as follows(use dwc3 driver):

Unable to handle kernel paging request at virtual address ffffffc0f7e00000
Internal error: Oops: 96000146 [#1] PREEMPT SMP
PC is at __dma_clean_range+0x18/0x30
LR is at __swiotlb_map_page+0x50/0x64
Call trace:
 [<ffffffc0000930f8>] __dma_clean_range+0x18/0x30
 [<ffffffc00062214c>] usb_gadget_map_request+0x134/0x1b0
 [<ffffffc0005c289c>] __dwc3_ep0_do_control_data+0x110/0x14c
 [<ffffffc0005c2d38>] __dwc3_gadget_ep0_queue+0x198/0x1b8
 [<ffffffc0005c2e18>] dwc3_gadget_ep0_queue+0xc0/0xe8
 [<ffffffc00061cfec>] composite_ep0_queue.constprop.14+0x34/0x98
 [<ffffffc00061dfb0>] composite_setup+0xf60/0x100c
 [<ffffffc0006204dc>] android_setup+0xd8/0x138
 [<ffffffc0005c29a4>] dwc3_ep0_delegate_req+0x34/0x50
 [<ffffffc0005c3534>] dwc3_ep0_interrupt+0x5dc/0xb58
 [<ffffffc0005c0c3c>] dwc3_thread_interrupt+0x15c/0xa24

With this patch, the gadget driver will not queue a request and
return immediately if req->length is invalid. And the usb controller
driver can handle the unsupport request correctly.

Change-Id: I60270d7c12fa190a99cd1079880a2f7167e7af27
Signed-off-by: Wu Liang feng <wulf@rock-chips.com>
2016-04-19 09:14:38 +08:00
Xubilv
5e393383bc video: rockchip: mipi: rk3399: add power domain control
Change-Id: I61c2ad075417a716b1ba7c73baf4fd5889b402e9
Signed-off-by: Xubilv <xbl@rock-chips.com>
2016-04-18 20:50:08 +08:00
Mark Yao
eab94f6acf video: rockchip: vop: 3399: fix afbdc abnormal
The vop mask write need use u64 value.

Change-Id: I020fdf4e7115b2763dd732be6542589f61190f4a
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2016-04-18 18:29:35 +08:00
Shawn Lin
e90650e85b FROMLIST: thermal: rockchip: disable thermal->clk in err case
Disable thermal->clk when enabling pclk fails in
resume routine.

Change-Id: I7d8780be04891bf4cddf1ba970eae2a2f14ec7ac
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(am from https://patchwork.kernel.org/patch/8867151/)
2016-04-18 17:20:04 +08:00
Wu Liang feng
268399dd65 usb: dwc3: fix compile failure if config host only mode
This patch fixes following compile error in dwc3 if select
CONFIG_USB_DWC3_HOST.

drivers/usb/dwc3/core.c:874: undefined reference to `dwc3_gadget_restart'
drivers/usb/dwc3/core.c:880: undefined reference to `dwc3_gadget_restart'

which was caused by commit
commit 9607f47dfe
usb: dwc3: add functions to set force mode

Change-Id: Id0abaf89fba006609dbf2e7a771149453465b371
Signed-off-by: Wu Liang feng <wulf@rock-chips.com>
2016-04-18 16:59:43 +08:00
Huang Jiachai
151c8e994c video: rockchip: vop: 3399: add power domain control
Change-Id: Ie10029456b2a62a30c5571131c142e0468f86d48
Signed-off-by: Huang Jiachai <hjc@rock-chips.com>
2016-04-18 11:33:56 +08:00
Rocky Hao
50b7e576c6 ARM64: dts: rk3399: update cpu and gpu opp tables
Change-Id: Ic27e5e0f9e74db8eb3fb2048127e7e0d6ca1bd92
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2016-04-15 19:59:34 +08:00
Caesar Wang
3db05ce518 ARM64: dts: rockchip: add thermal zone node for rk3399 SoCs
This adds thermal zone node to rk3399 dtsi, rk3399 thermal data is
including the cpu and gpu sensor zone node.
At the moment, remove the rk3368 thermal data from rk399 dtsi.

The thermal zone node is the node containing all the required info
for describing a thermal zone, including its cooling device bindings. The
thermal zone node must contain, apart from its own properties, one sub-node
containing trip nodes and one sub-node containing all the zone cooling maps

The following is the parameter is introduced:

* polling-delay:
The maximum number of milliseconds to wait between polls

* polling-delay-passive:
The maximum number of milliseconds to wait between polls when performing
passive cooling.

* trips:
A sub-node which is a container of only trip point nodes required to describe
the thermal zone.

* cooling-maps:
A sub-node which is a container of only cooling device map nodes, used to
describe the relation between trips and cooling devices.

* cooling-device:
A phandle of a cooling device with its specifier, referring to which cooling
device is used in this cooling specifier binding. In the cooling specifier,
the first cell is the minimum cooling state and the second cell is the maximum
cooling state used in this map.

Change-Id: I76c5829fdc120cd5da078e2937abeee720ee379c
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-15 19:56:29 +08:00
Caesar Wang
ec24f1ae50 thermal: rockchip: add the set_trips function
Whenever the current temperature is updated, the trip points immediately
below and above the current temperature are found. A sensor driver
callback `set_trips' is then called with the temperatures.
Lastly, The sensor will trigger the hardware high temperature interrupts
to increase the sampleing rate and throttle frequency to limit the temperature
rising When performing passive cooling.

Change-Id: I43d37a8431240cb7b62da7bff83464aba3c8983e
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-15 19:55:38 +08:00
Mikko Perttunen
2f8e5324ef CHROMIUM: thermal: of: Add support for hardware-tracked trip points
This adds support for hardware-tracked trip points to the device tree
thermal sensor framework.

The framework supports an arbitrary number of trip points. Whenever
the current temperature is updated, the trip points immediately
below and above the current temperature are found. A sensor driver
callback `set_trips' is then called with the temperatures.
If there is no trip point above or below the current temperature,
the passed trip temperature will be LONG_MAX or LONG_MIN respectively.
In this callback, the driver should program the hardware such that
it is notified when either of these trip points are triggered.
When a trip point is triggered, the driver should call
`thermal_zone_device_update' for the respective thermal zone. This
will cause the trip points to be updated again.

If the `set_trips' callback is not implemented (is NULL), the framework
behaves as before.

CQ-DEPEND=CL:*210768
BUG=chrome-os-partner:30834
TEST=None

Change-Id: I33226d2b80f3e71a0c3ca3fbc5718db4e461268f
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Paul Walmsley <pwalmsley@nvidia.com>
Signed-off-by: Wei Ni <wni@nvidia.com>
Reviewed-on: https://chromium-review.googlesource.com/212425
Reviewed-by: Olof Johansson <olofj@chromium.org>
Commit-Queue: Olof Johansson <olofj@chromium.org>
Tested-by: Olof Johansson <olofj@chromium.org>
Reviewed-on: https://chrome-internal-review.googlesource.com/210454
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Tested-by: Dylan Reid <dgreid@chromium.org>
Commit-Queue: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/267514
Tested-by: David Riley <davidriley@chromium.org>
Reviewed-by: David Riley <davidriley@chromium.org>
Commit-Queue: David Riley <davidriley@chromium.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(cherry-picked from https://chromium.googlesource.com/chromiumos/
 third_party/kernel/+/v3.18 commit 397befabb2a52fc16586509a970f8c98268b8040)
2016-04-15 19:55:16 +08:00
Caesar Wang
ae9810ed8e ARM64: config: add the thermal needed configure for rockchip
We need the cpu throttle and IPA function for rockchip.
Also enable the writable trips function.

Let's enable the needed config for thermal.

Change-Id: Ibd43aa4ef3cc5e0a325e376d753cffc8bcdb8c02
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-15 19:54:49 +08:00
Huang, Tao
1877411306 clk: rockchip: rk3399: add 216M and 96M for armclkb and armclkl
support 216M/96M for armclkb and armclkl

Change-Id: I26bf94ab0b27863a438b52be29e1a3aa208fa6ff
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-04-15 19:27:28 +08:00
Yakir Yang
1d867a6619 ARM64: dts: rk3399: don't let VOP LIT first to select eDP device
The endpoint order would decide the priority of connector devices,
the higher the priority ranking.

For now eDP can't light up with VOP Lit, so we need to cut down
the priority that eDP in VOP Lit, and raise up the priority that
MIPI in VOP Lit.

Change-Id: Ide4e321f03cf7ad5080c6db7f9230962963a3eb8
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-15 18:38:45 +08:00
Yakir Yang
602f4f79c8 ARM64: dts: rk3399: gru: Let VOP Big first to select connector device
This is a hack way to let VOP Big to select eDP device when VOP
Big and Lit all enabled.

Change-Id: Ia2bc91ff903bbc7d00deed57aab315328ce54378
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-15 18:38:28 +08:00
Elaine Zhang
f3fccf8a8e clk: rockchip: rk3399: fix clk_cifout setting clk error
Fix a typo making the clk_cifout access a
wrong clk tree to handle its mux and div.

Change-Id: Ief20e684eadd10b75cf36120df16f13c7581d303
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-04-15 16:49:42 +08:00
Yakir Yang
bf6121ea6b ARM64: dts: rk3399: gru: add backlight and eDP panel device nodes
Panel brightness is controller by EC, the AP just enable/disable the
backlight power through GPIO1_C1.

Change-Id: I46e1f3b5098159cb07f86ba203ef8cfa102dd385
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-15 09:04:00 +08:00
Yakir Yang
3a830a4ca1 ARM64: dts: rk3399: chrome: enable eDP support
The RK3399 EVB board is using the LG LP097QX1-SPA1
9.7" 2048x1536 eDP panel.

Change-Id: I837b0a569605591756918b12f56dbaa0b1f3f8d4
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-15 09:00:08 +08:00
Douglas Anderson
eb081d3ace HACK: ARM64: dts: rockchip: Hack out PWM regulators on gru
Until we get PWM regulator solid, let's hack it out and just keep
whatever the firmware set for us.

Note that when the kernel boots it appears that it does some reparenting
of clocks and the PWM frequency actually changes.  ...but the voltage
seems OK ish.

Change-Id: I3be6ea4460f685e4a75a0f7f31f767f09b908442
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chrome-internal-review.googlesource.com/254650
Reviewed-by: Stephen Barber <smbarber@google.com>
Tested-by: Doug Anderson <dianders@google.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(Fixes the typo)
2016-04-14 19:53:13 +08:00
Elaine Zhang
aa5f0cf860 ARM64: dts: rockchip: rk808: set the dvs2 gpio pull down
the hw default of the dvs2 is pull up which is not correct.
set the dvs2 gpio pull down.

Change-Id: I0d296cecc422456cb72630d5ce64a5c7e5dad283
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-04-14 19:27:34 +08:00
Douglas Anderson
61cf7aff68 HACK: clk: rockchip: rk3399: Mark the PWM clock as critical
Until we get all the magic PWM regulator stuff solved with Boris's
wonderful upstream patches, let's just hack the PWM clock to be critical
so it never turns off.  Nuff said.

Change-Id: I99660b0b188413eb08030a3ae87c045c338b30db
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chrome-internal-review.googlesource.com/254649
Reviewed-by: Stephen Barber <smbarber@google.com>
Tested-by: Doug Anderson <dianders@google.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(Fixes the pclk_rkpwm_pmu into pmucru_critical_clock)
2016-04-14 19:26:01 +08:00
Caesar Wang
9bfd0074fe ARM64: rockchip_cros_defconfig: cleanup for defconfig
We should make sure the config generate from the savedefconfig.
Okay, anyway cleanup the config with run 'make ARCH=arm64 savedefconfig'.

Change-Id: Ia094322870d378183760e32b7177971342e48439
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-14 19:08:01 +08:00
Yakir Yang
645466daa3 ARM64: dts: rk3399: gru: enable GPU device node
Change-Id: I2edad7d66cf655cb96ac6c933fdece9734eda469
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 19:06:51 +08:00
Yakir Yang
4c89aabe45 ARM64: rockchip_cros_defconfig: enable GPIO BACKLIGHT
The eDP panel of Kevin board only have a AP GPIO to control
the backlight power, so we need to enable the GPIO backlight
type for it.

Change-Id: I939e1c658b56ee5d889af820985f9ffd46f50485
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 18:28:04 +08:00
Yakir Yang
697b747322 dt-bindings: add Samsung LSN122DL01-C01 panel binding
The Samsung LSN122DL01-C01 is an 12.2" 2560x1600 (WQXGA) TFT-LCD
panel connected using eDP interfaces.

Change-Id: Ib5164763d18c5cffcc83b38715f559a4a0c02638
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 18:26:45 +08:00
Yakir Yang
e010639f29 drm/panel: simple: Add support for Samsung LSN122DL01-C01 2560x1600 panel
The Samsung LSN122DL01-C01 is an 12.2" 2560x1600 (WQXGA) TFT-LCD panel
connected using eDP interfaces.

Change-Id: I3c2208fc45b53b0fab328fcb9ba204f610a9f9f6
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 18:26:00 +08:00
roger
f78343fcad ARM: dts: rk3366-tb: adjust tx & rx delayline for 1000BT ethernet
Change-Id: I4d5f7150178d8f6f7e78f9109e49c73956aefaee
Signed-off-by: roger <roger.chen@rock-chips.com>
2016-04-14 18:22:17 +08:00
Caesar Wang
6877af4c3f ARM64: dts: rockchip: fixes the hw-tshut-polarity for rk3399
AFAIK, the hardware designed that TSHUT should be set the active high.

Since rk3399 evb designed the over-temperature protection pin is
connected to PMIC that active high vaild.
Also, as gru/kevin designed the over-temperature protection pin is
connected to EC control that active high to prevent leakage.

Change-Id: Ib7b15d115d2ea4e474918fc416dde273b040e740
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-14 17:28:10 +08:00
Yakir Yang
2a762e702c drm: rockchip: analogix_dp: update the comments about why need to hardcode VOP output mode
The hardware IC designed that VOP must output the RGB10 video format to
eDP contoller, and if eDP panel only support RGB8, then eDP contoller
should cut down the video data, not via VOP contoller, that's why we need
to hardcode the VOP output mode to RGA10 here.

Change-Id: I733eae8a5dda51c0288d8627ceffb39a2f804e62
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 14:41:52 +08:00
Yakir Yang
f154f17040 drm: rockchip: analogix_dp: correct the connector display color format and bpc
Rockchip VOP couldn't output YUV video format for eDP controller, so
when driver detect connector support YUV video format, we could hack
it down to RGB888.

Change-Id: Ia876bb49e772f85bef201af2b62dd558d6b99257
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 14:40:47 +08:00
Yakir Yang
280a4db610 drm/bridge: analogix_dp: introduce connector mode_valid callback to plat driver
It's helpful to expand the mode_valid callback to platform driver,
so they could valid the display mode or informations.

Change-Id: Icfd7593bd10c93fc9045acf04a8d0ed6336ffb85
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 14:39:52 +08:00
Yakir Yang
33cab09a90 drm/rockchip: analogix_dp: make panel detect to an optional action
Some boards don't need to declare a panel device node, like the
display interface is DP monitors, so it's necessary to make the
panel detect to an optional action.

Change-Id: I0146e9f9fb2e35b5878ab114e8aa1df35ba4843d
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 14:38:38 +08:00
Yakir Yang
523ed4cfc6 Revert "drm/bridge: analogix_dp: hardcode input video format to RGB10 for Rockchip platform"
On RK3399 EVB board, the LG panel only support RGB888. so with previous
changes, VOP would send the RGB10 video format to panel, and then panel
just display abnormally.

This reverts commit 144e62cef3.

Change-Id: I09a5ab0aa8758e87e8b7f2fc20fbbaa113fe1d33
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
2016-04-14 14:36:27 +08:00
Douglas Anderson
eca81b43d0 ARM64: dts: rockchip: Remove default sample phase from gru
It looks like the addition of default-sample-phase to the GRU dts is
what was causing my periodic boot failures.  After removing it I found
that I could get 25+ reboots with no failures.  Calling it good.

BUG=None
TEST=Reboot many times; see successful boot each time.

Change-Id: Id200957da9d9a2eb81ce63dcb57c4f0f5e94e72d
Signed-off-by: Douglas Anderson <dianders@chromium.org>
2016-04-14 09:26:12 +08:00
Daniel Thompson
ed55942044 UPSTREAM: drm: prime: Honour O_RDWR during prime-handle-to-fd
Currently DRM_IOCTL_PRIME_HANDLE_TO_FD rejects all flags except
(DRM|O)_CLOEXEC making it difficult (maybe impossible) for userspace
to mmap() the resulting dma-buf even when this is supported by the
DRM driver.

It is trivial to relax the restriction and permit read/write access.
This is safe because the flags are seldom touched by drm; mostly they
are passed verbatim to dma_buf calls.

v3 (Tiago): removed unused flags variable from drm_prime_handle_to_fd_ioctl.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1450820214-12509-2-git-send-email-tiago.vignatti@intel.com
(cherry picked from commit bfe981a095)
Signed-off-by: Brian Norris <briannorris@chromium.org>

Change-Id: Ieb3c547b1a08bd9c90fe72e0a1df1757d100aa8e
Reviewed-on: https://chrome-internal-review.googlesource.com/255266
Tested-by: Brian Norris <briannorris@google.com>
Reviewed-by: Doug Anderson <dianders@google.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-14 09:25:43 +08:00
roger
ede46ce02b ARM64: dts: rk3399-tb: adjust tx & rx delayline for 1000BT ethernet
Change-Id: I36dfc4d1289e388c7a955f3ba0e7f974b39d28fd
Signed-off-by: roger <roger.chen@rock-chips.com>
2016-04-13 19:52:31 +08:00
Caesar Wang
64ae860b48 thermal: rockchip: add the notes for better reading
To update the notes for keeping in mind that quickly in case
someone re-read this driver in the future.

Change-Id: Ic752ed1d6a818f21560befd981383e8b532dff36
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-13 18:48:47 +08:00
Rocky Hao
99dd27d23b thermal: rockchip: add the interleave value setting
The interleave is between power down and start of conversion,
This patch adds to workaround ic time sync issue for control.

Change-Id: Ib9f28fd92bcecf8ddaa8a69d47ced87fef04e7c6
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2016-04-13 17:45:22 +08:00
Elaine Zhang
b4822ded3d thermal: rockchip: Support RK3366 SoCs in the thermal driver
The RK3366 SoCs have two Temperature Sensors, channel 0 is for CPU
channel 1 is for GPU.

Change-Id: I71324c65e82804f52d464b986e1d86127f8dc040
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2016-04-13 17:43:56 +08:00
Brian Norris
613b5c4470 ARM64: rockchip_cros_defconfig: enable /proc/config.gz
This helps to be absolutely sure of what CONFIG_* switches are enabled
for your build.

Change-Id: Ic1043d78b01502af9f5a2d4776672c66fc152f5c
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chrome-internal-review.googlesource.com/254936
Commit-Queue: Brian Norris <briannorris@google.com>
Tested-by: Brian Norris <briannorris@google.com>
Reviewed-by: Stephen Barber <smbarber@google.com>
2016-04-13 17:40:59 +08:00
Brian Norris
17f486bee1 ARM64: dts: rockchip: Force pp3300_disp regulator to stay on
Normally, the display regulator would be kept powered on by the
display/backlight driver, but we don't yet have a DT representation or
driver for this, as the PWM is controlled by the EC. Just force the
regulator on for now.

This wasn't needed on some boards yet, since they were forcing this
regulator "on." But for those where we might be controlling it, we need
this. (And it's harmless otherwise.)

This is necessary but not sufficient for getting UI up on my board.

Change-Id: I30650c178dd42d76542f8f2491e22d9bf548363e
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chrome-internal-review.googlesource.com/254935
Commit-Queue: Brian Norris <briannorris@google.com>
Tested-by: Brian Norris <briannorris@google.com>
Reviewed-by: Stephen Barber <smbarber@google.com>
2016-04-13 17:40:26 +08:00
Xing Zheng
7bba395216 ARM64: rockchip_cros_defcofnig: enable DA7219 manchine driver and codec
Change-Id: Iaf0f1f63b6f1b8f0e3f391b1d900b201d59b9660
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-13 15:42:59 +08:00
Xing Zheng
05f656c184 ARM64: dts: gru: Add support machine driver for DA7219
Now, we can playback and capture via DA7219 machine driver call the
da7219_aad_jack_det (simple-card can not do this).

Change-Id: I8b1be189031f875b1c5328e9357115761a5f4da3
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-13 15:42:58 +08:00
Xing Zheng
a3c85fe70f ASoC: rockchip: Add support machine driver for DA7219
The DA7219 only support headphone playback, we may not call the
da7219_aad_jack_det when we use the simple-card.

Therefore, the machine driver may be need to submit upstream.

Change-Id: Iecf53fa62fcaf43175bbbcd2b7c8b0d5c67655ac
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-13 15:42:53 +08:00
Xing Zheng
27d659372c clk: rockchip: rk3399: Add CLK_SET_RATE_PARENT for main VOP0
We recommend, VOP0 is the main screen, VOP1 is a sub screen,
only VOP0 is able to re-set parent (VPLL) rate.

Change-Id: If40f95ce18e73477df8f7f031013333a603d5eb2
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-13 15:30:57 +08:00
Xing Zheng
8d01ea2168 clk: rockchip: rk3399: Modify dummy clock for VOP dclks
Because frac div need to more than 20 multiple between the numerator
and denominator, but we need to be fit many HDMI/DP freqs and may
bring serious jitter when the dclk_vopx below the dclk_vopx_frac.

Therefore, we can select dclk_vopx below the dclk_vopx_div directly.

Change-Id: If3d9051211f0b160a507f0942667796f043f4ec2
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-13 15:29:10 +08:00
Adam Thomson
46265c1e20 UPSTREAM: ASoC: da7219: Correct BCLK inversion for DSP DAI format mode
By default the device latches data on the falling edge of the
BCLK in DSP mode, whereas the expectation for normal BCLK is to
latch on the rising edge. This updates the driver to invert the
BCLK configuration for DSP mode, to align with expected behaviour.

Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 4acfa36be6)

Change-Id: I646f6ec9fb377ce95d90d57c80dc05f13b6696f2
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-13 11:41:18 +08:00
Adam Thomson
27c41ca3dd UPSTREAM: ASoC: da7219: Add regmap patch to support old silicon
Initial silicon did not have master bias enabled by default, unlike
later HW, so use regmap patch to align with newer defaults.

Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit abd7c894fc)

Change-Id: I1b941c779320b58110b78c2c127bb08629c7a3fa
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
2016-04-13 11:41:10 +08:00