Commit Graph

843937 Commits

Author SHA1 Message Date
Tony Xie
c0570888f0 mfd: rk808: Set only resetting pmic register for 817&809.
If the system needs hold register values when system will reboot.
need to set only resetting pmic register for 817&809 forcedly.

Change-Id: Ib4b850c86ec3079cd7e374bc96460ee1532854a2
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
2019-07-31 11:09:14 +08:00
Tony Xie
cfe40315e8 pinctrl: support pinctrl driver for the RK817&RK809 PMIC
Change-Id: I9a24ee0d9266a000d582f8ffff8b0c872e3a0769
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
2019-07-31 11:09:14 +08:00
Heiko Stuebner
6dbd6c0535 UPSTREAM: regulator: rk808: Add RK809 and RK817 support.
Add support for the rk809 and rk817 regulator driver.
    Their specifications are as follows:
    1. The RK809 and RK809 consist of 5 DCDCs, 9 LDOs
       and have the same registers for these components except dcdc5.
    2. The dcdc5 is a boost dcdc for RK817 and is a buck for RK809.
    3. The RK817 has one switch but The Rk809 has two.

    The output voltages are configurable and are meant to supply power
    to the main processor and other components.

Change-Id: Id652bcc749263bfb70dc9fe9490d56f10f7345d4
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Acked-by: Mark Brown <broonie@kernel.org>
[rebased on top of 5.2-rc1]
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry picked from commit e444f6d68c)
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-31 11:09:14 +08:00
Tony Xie
7923bd0b93 UPSTREAM: clk: RK808: Add RK809 and RK817 support.
RK809 and RK817 are power management IC chips for multimedia products.
most of their functions and registers are same, including the clkout
funciton.

Change-Id: Ie86ae58b47a3afc0fe298fdecf9e43d8cae232a9
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry picked from commit 8ed1440197)
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-31 11:09:14 +08:00
Tony Xie
04d617098b UPSTREAM: rtc: rk808: Add RK809 and RK817 support.
RK809 and RK817 are power management IC chips for multimedia products.
Most of their functions and registers are same, including the rtc.

Change-Id: I090ac33f951b64f5c88e6defe67d1f50f8ffd4e5
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry picked from commit dc79054a64)
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-31 11:09:14 +08:00
Stefan Mavrodiev
62e9bedcf2 UPSTREAM: mfd: rk808: Check pm_power_off pointer
The function pointer pm_power_off may point to function from other
module (PSCI for example). If rk808 is removed, pm_power_off is
overwritten to NULL and the system cannot be powered off.

This patch checks if pm_power_off points to a module function.

Change-Id: I00de90d1f5f1cf6587167e59d7e577f484e1fc8c
Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry picked from commit 7630499464)
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-31 11:09:14 +08:00
Tony Xie
af2cb4b882 UPSTREAM: mfd: rk808: Add RK817 and RK809 support
The RK809 and RK817 are a Power Management IC (PMIC) for multimedia
and handheld devices. They contains the following components:
  - Regulators
  - RTC
  - Clocking

Both RK809 and RK817 chips are using a similar register map,
so we can reuse the RTC and Clocking functionality.
Most of regulators have a some implementation also.

Change-Id: I7bc906a41c49e3f1552cf19f1d5fb75b5b8957b3
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry picked from commit 586c1b4125)
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-31 11:09:14 +08:00
Tony Xie
9d41cf4fa0 UPSTREAM: mfd: rk808: Remove the id_table
Remove the id_table because it's not used.

Change-Id: I406d5bd9609652cfee83af2ab7571af4e06f3aff
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry picked from commit 54349b3ce8)
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-31 11:01:26 +08:00
Tony Xie
465bcb4851 UPSTREAM: regmap: add a new macro:REGMAP_IRQ_REG_LINE(_id, _reg_bits)
if there are lots of irqs for a device and the register addresses for these
irqs is continuous, we can use this macro to initialize regmap_irq value.

Change-Id: If358af414c98951363315510b1d23748ba0683e0
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 43fac3238c)
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-31 11:01:26 +08:00
Finley Xiao
138d2658ae PM / devfreq: rockchip_dmc: Update stats in a fixed rate scene
Now we set the load of fixed rate scene to 100%, it isn't accurate,
it is better to update stats if auto freq is enabled.

Change-Id: I7de2c5f0b218cbeb32340bf3287cee0565773785
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2019-07-23 17:06:59 +08:00
Finley Xiao
1fae7b1632 PM / devfreq: rockchip_dmc: Use raw_smp_processor_id()
Fix this warning when DEBUG_PREEMPT is selected:
BUG: using smp_processor_id() in preemptible [00000000] code: devfreq_wq/46
caller is debug_smp_processor_id+0x1c/0x24
CPU: 4 PID: 46 Comm: devfreq_wq Tainted: G           O    4.4.179-gaa55fe4a4414 #71
Hardware name: Rockchip RK3399 Excavator Board (Linux Opensource) (DT)
Workqueue: devfreq_wq devfreq_monitor
Call trace:
[<ffffff800808866c>] dump_backtrace+0x0/0x228
[<ffffff80080888b8>] show_stack+0x24/0x30
[<ffffff80083c91a0>] dump_stack+0x88/0xb0
[<ffffff80083e11f0>] check_preemption_disabled+0xd4/0xfc
[<ffffff80083e1234>] debug_smp_processor_id+0x1c/0x24
[<ffffff80087a8ce0>] rockchip_dmcfreq_target+0x114/0x340
[<ffffff80087a5ff0>] update_devfreq+0x120/0x1b4
[<ffffff80087a60b8>] devfreq_monitor+0x34/0x8c
[<ffffff80080b3164>] process_one_work+0x23c/0x3d8
[<ffffff80080b3340>] process_scheduled_works+0x40/0x44
[<ffffff80080b3c8c>] rescuer_thread+0x174/0x26c
[<ffffff80080b9020>] kthread+0xdc/0xec
[<ffffff8008082ef0>] ret_from_fork+0x10/0x20

Change-Id: Idc05e25403de04108f597e69643e91868728b873
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2019-07-23 17:06:47 +08:00
Tao Huang
378cb4994d Revert "PM / devfreq: rockchip_dmc: Fix using smp_processor_id() in preemptible warning"
This reverts commit 67721b1381.

The get_cup() will disable preemption and the clk_set_rate() may call
schedule() on some platforms, otherwise we may schedule while atomic.

BUG: scheduling while atomic: sh/552/0x00000002
Modules linked in:
CPU: 1 PID: 552 Comm: sh Not tainted 4.4.179 #1122
Hardware name: Rockchip RK1808 EVB V10 Board (DT)
Call trace:
[<ffffff80080873bc>] dump_backtrace+0x0/0x1cc
[<ffffff800808759c>] show_stack+0x14/0x1c
[<ffffff800823a474>] dump_stack+0x94/0xbc
[<ffffff80080b4664>] __schedule_bug+0x3c/0x54
[<ffffff8008657c10>] __schedule+0x88/0x460[root@rk1808:/]#
[<ffffff800865805c>] schedule+0x74/0x94
[<ffffff800865a6dc>] schedule_timeout+0x148/0x178
[<ffffff80084a2920>] rockchip_dmcfreq_wait_complete+0x11c/0x144
[<ffffff800849d508>] rockchip_ddrclk_sip_set_rate_v2+0x64/0x74
[<ffffff8008497420>] clk_change_rate+0xd4/0x208
[<ffffff80084975e4>] clk_core_set_rate_nolock+0x90/0xa4
[<ffffff8008497620>] clk_set_rate+0x28/0x48
[<ffffff80084a1624>] rockchip_dmcfreq_target+0x1f0/0x320
[<ffffff800849fc8c>] update_devfreq+0x118/0x1ac
[<ffffff80084a0974>] store_freq+0x5c/0x84
[<ffffff800832a800>] dev_attr_store+0x18/0x28
[<ffffff80081992d8>] sysfs_kf_write+0x38/0x50
[<ffffff80081984d8>] kernfs_fop_write+0x114/0x170
[<ffffff800813d1f8>] __vfs_write+0x1c/0xc4
[<ffffff800813d990>] vfs_write+0x9c/0x150
[<ffffff800813e21c>] SyS_write+0x44/0x88
[<ffffff8008082ef0>] el0_svc_naked+0x24/0x28

Change-Id: I18f3ee81139ca2908d91a7ef59d3635d1a7e69cb
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2019-07-23 17:06:28 +08:00
Algea Cao
0c9fa833a7 drm/rockchip: dw-hdmi: Add ycbcr_420_allowed to hdmi plat data
If the platform supports yuv420, set ycbcr_420_allowed to true.

Change-Id: I963b35b1e243f3267a3237c82120e6fe826850d5
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-07-22 10:42:45 +08:00
Neil Armstrong
385bc8c09d FROMLIST: drm/bridge: dw-hdmi: allow ycbcr420 modes for >= 0x200a
Now the DW-HDMI Controller supports the HDMI2.0 modes, enable support
for these modes in the connector if the platform supports them.
We limit these modes to DW-HDMI IP version >= 0x200a which
are designed to support HDMI2.0 display modes.

Change-Id: I719a138151b1fa2e16941d2f3ac2d8a71bba4a99
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
(am from https://patchwork.kernel.org/patch/282372/)
2019-07-22 10:42:45 +08:00
Neil Armstrong
28850f6ab7 UPSTREAM: drm/bridge: dw-hdmi: add support for YUV420 output
In order to support the HDMI2.0 YUV420 display modes, this patch
adds support for the YUV420 TMDS Clock divided by 2 and the controller
passthrough mode.

YUV420 Synopsys PHY support will need some specific configuration table
to support these modes.

This patch is based on work from Zheng Yang <zhengyang@rock-chips.com> in
the Rockchip Linux 4.4 BSP at [1]

[1] https://github.com/rockchip-linux/kernel/tree/release-4.4

Change-Id: I41733e40ac1a528c8a0e0dadb79c4e3b31ea5f6b
Cc: Zheng Yang <zhengyang@rock-chips.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1549022873-40549-5-git-send-email-narmstrong@baylibre.com
(cherry picked from commit ba9877e236)
2019-07-22 10:42:44 +08:00
Neil Armstrong
50f1e72b05 UPSTREAM: drm/bridge: dw-hdmi: Add SCDC and TMDS Scrambling support
Add support for SCDC Setup for TMDS Clock > 3.4GHz and enable TMDS
Scrambling when supported or mandatory.

This patch also adds an helper to setup the control bit to support
the high TMDS Bit Period/TMDS Clock-Period Ratio as required with
TMDS Clock > 3.4GHz for HDMI2.0 3840x2160@60/50 modes.

These changes were based on work done by Huicong Xu <xhc@rock-chips.com>
and Nickey Yang <nickey.yang@rock-chips.com> to support HDMI2.0 modes
on the Rockchip 4.4 BSP kernel at [1]

[1] https://github.com/rockchip-linux/kernel/tree/release-4.4

Change-Id: I0c98f6b0e05a87018ffb7ced404bbb7433dff87f
Cc: Nickey Yang <nickey.yang@rock-chips.com>
Cc: Huicong Xu <xhc@rock-chips.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1549022873-40549-2-git-send-email-narmstrong@baylibre.com
(cherry picked from commit 264fce6cc2)
2019-07-22 10:42:44 +08:00
Zheng Yang
1063dafafd drm/rockchip: dw-hdmi: fix color depth check in YCBCR420 mode
If sink doesn't support YCBCR420 deep color, we return default
8bit.

In YCBCR420 mode, tmdsclock is half of RGB444 mode.

Change-Id: Ie3a1f8ca4bbe4b3bae5d7c9ea823fc798721a73a
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:44 +08:00
Zheng Yang
2d2d0ed94d drm/rockchip: hdmi: add color depth and output mode capacity property
Change-Id: I878780df5c1c81094498be2e7b4b3a22da0bfd4e
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:43 +08:00
Zheng Yang
49eecef6cf drm/rockchip: hdmi: support modify color format
This patch is based on https://patchwork.kernel.org/patch/9801533,
add the drm property "hdmi_output_format", the possible value
could be:
     - RGB
     - YCBCR 444
     - YCBCR 422

To handle various subsampling of YCBCR output types, this property
allows two special automatic cases:
     - DRM_HDMI_OUTPUT_YCBCR_HQ
       This indicates preferred output should be YCBCR output,
       with highest subsampling rate by the source/sink, which
       can be typically:
	- ycbcr444
	- ycbcr422
	- ycbcr420
     - DRM_HDMI_OUTPUT_YCBCR_LQ
       This indicates preferred output should be YCBCR output, with
       lowest subsampling rate supported by source/sink, which can be:
	- ycbcr420
	- ycbcr422
	- ycbcr444

Default value of the property is set to 0 = RGB, so no changes if you
don't set the property.

Change-Id: Ie4a98ba91c8285a2e8f1ec7832d73183ad57665e
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:43 +08:00
Zheng Yang
9f34fe8ff5 drm/rockchip: hdmi: support modify color depth
This patch introduce a drm property hdmi_output_depth to
get/set HDMI color depth, the possible value could be
	- Automatic
	  This indicates prefer highest color depth, it is
	  30bit on rockcip platform.
	- 24bit
	- 30bit
The default value of property is 24bit.

The max_tmds_clock is 0 on some display device, we think it's
max_tmds_clock is 340MHz.

If tmdsclock > max_tmds_clock, real output color depth fallback
to 24bit.

Change-Id: I666ac85d1ce5e73af31251eae324d1a6ae00b31e
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:43 +08:00
Zheng Yang
ba6dac44cc drm: bridge: dw-hdmi: support attach property
Introduce struct dw_hdmi_property_ops in plat_data to attach
vendor connector property.

Change-Id: I3d23e40e9d342b22ca47f723b3f81057b58010e8
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:43 +08:00
Zheng Yang
e3cb24ea22 drm/rockchip: hdmi: Implement get input/output bus format handling
Set HDMI controller input/output bus format according to vop bus format.

Change-Id: Ib669ee6b0ea586410c715518d0bc9c55f5a52a50
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:42 +08:00
Zheng Yang
d149055570 drm: bridge/dw_hdmi: support DRM_MODE_FLAG_DBLCLK
Change-Id: I66d9456d6bde38fcf17d5cd5f6394517e4308a68
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:42 +08:00
Zheng Yang
1bec44e234 drm/edid: fix color format when parsing hdmi deep color info
According to HDMI spec 1.4, YCbCr422 is also 36-bit mode, so
we remove the override of color format when parsing hdmi deep
color info. And record hdmi YCbCr444 deep color info in
edid_hdmi_dc_modes.

The edid_hdmi_dc_modes should be clean up when parsing EDID.

Change-Id: Ic5bd3ff5e50b37f04ed4a0688be68bd8259e5af0
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2019-07-22 10:42:42 +08:00
Algea Cao
076ce0b10a ARM: dts: rk322x: Add rk322x hdmi max tmdsclk
RK322x hdmi max tmdsclk is 371250000.

Change-Id: I19f6f1fabadd4a225ba924761363c221983a1181
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-07-22 10:42:41 +08:00
Algea Cao
92236604a4 arm64: dts: rockchip:rk3328: Add rk3328 hdmi max tmdsclk
RK3328 hdmi max tmdsclk is 371250000.

Change-Id: I15768fc69b6604de665aa30acfda0a74d48c5f80
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-07-22 10:42:41 +08:00
Algea Cao
642f6c5709 ARM: dts: rk3288: Add rk3288 hdmi feature property
rk3288 don't support yuv input.

Change-Id: I7ea55090cac326ef567424c99cf89e78fdf19a16
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-07-22 10:42:41 +08:00
Algea Cao
c36559e9e0 drm/rockchip: hdmi: Add rockchip hdmi feature flag
Get hdmi feature flag from dts.

Change-Id: Ic2581b78639d4926b9060b109add15538ff5f462
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-07-22 10:42:41 +08:00
Mark Yao
7f82885d66 drm/rockchip: hdmi: support yuv420 mode on rk3288w
Change-Id: Ie7c68dad11a98a1142388deadb7d3034443f9658
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2019-07-22 10:42:40 +08:00
Algea Cao
5cdb722d41 drm/rockchip: hdmi: Add rk3228 hpd interface
Add rk3228 hpd set up and read interface.

Change-Id: Ie658f501e04376eb4b67ff78b0cfaeb9220f8189
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-07-22 10:42:40 +08:00
WeiYong Bi
48d9d7f2b2 drm/rockchip: hdmi: Add support for rk3228
RK3228 uses the Synopsys DWC HDMI TX controller and the INNO HDMI PHY to
enabling the integration of a complete HDMI Transmmiter interface.

Change-Id: I90f997968fb2de4165a31216c8aee8213089eab5
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
2019-07-22 10:42:40 +08:00
WeiYong Bi
f4a0a4155b drm/rockchip: dw_hdmi: Add support for rk3368
Change-Id: I6a49447a5edd53013ed81875f351089793914f77
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
2019-07-22 10:42:34 +08:00
Liang Chen
86379b37ce clk: rockchip: rk3328: set ddr clk with sip call
We need use sip call to change ddr frequency.

Change-Id: I6ad4516306f0cb7c3e0a7124c21ee9fedfd9d055
Signed-off-by: Liang Chen <cl@rock-chips.com>
2019-07-19 19:28:33 +08:00
Sugar Zhang
eee2c022da arm64: configs: rockchip_defconfig: enable SND_SOC_ROCKCHIP_I2S
Change-Id: I905384a8d0b59a53824189ddcee4636e0670137b
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2019-07-19 19:27:09 +08:00
Sandy Huang
1aea43982f drm/rockchip: vop: add support mcu and gamma
Change-Id: I02d093baaec6e363cadb6ef2b4943c00285c1cd7
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 19:24:24 +08:00
Sandy Huang
0848de283c drm/rockchip: vop: sync register define with linux 4.4
Change-Id: I088a052319f91a3189b1c4811837c957daa56aef
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 19:24:17 +08:00
Sandy Huang
7d604e646f drm/rockchip: driver: DRM_MODE_CONNECTOR_Unknown type unsupport hotplug
Change-Id: I3b8dc97e5bd6ae6a2877adaf82d4ef4f578f95db
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:24:34 +08:00
Sandy Huang
c86b7a8dd3 drm/rockchip: vop: add BCSH support function
Change-Id: I17bcd5a07b93b3c68aa892606f886bcd3a7673a0
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:24:03 +08:00
Sandy Huang
19e2fb90cf drm/rockchip: vop: add support post scale
Change-Id: I8d937b2659e4201a26e654b1f1aed1a9ea8405d1
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:23:34 +08:00
Sandy Huang
f4d66025c2 drm/rockchip: driver: correct rockchip_crtc_state->output_type
Change-Id: I572170010e17a2a11cd650538cb09c18f82cf728
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:23:14 +08:00
Sandy Huang
2faecef993 drm/rockchip: dw_hdmi: init connector port for kernel logo
Change-Id: If964f72aa8f242406145d8ac42a35ac0932f6f3f
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:22:23 +08:00
Sandy Huang
5212d8eb24 drm/rockchip: vop: add more output type support
Change-Id: I9fb3023400086fe83326c039e443daaa35be7b9b
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:22:07 +08:00
Sandy Huang
1a5de0dbf0 drm/rockchip: vop: set frame start to field start for interlace mode
In interlace mode(480i60hz) the frame rate is 30hz, this is too low and
lead to CTS test failed, so we use field start interrupt instead of
frame start, and the vsync will update to 60hz.

Change-Id: If73fb2b04dbd6749cc7cf899234a9f1e2283519e
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:21:20 +08:00
Sandy Huang
6b2cb2ade2 drm/rockchip: vop: add support CSC
Change-Id: I4ed359529825fc6c8d91460e89aa48ec9ed3e13f
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:20:56 +08:00
Sandy Huang
265d4bcbae drm/rockchip: driver: set loader_protect when in kernel logo on
protect restore_fbdev_mode in kernel logo on until userspace
power on.

Change-Id: I561d9eaa3a931471cdc81b41f6c0a7db28588ba0
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 14:19:59 +08:00
Sugar Zhang
df7d49af42 ASoC: codecs: add support for rk3328
switch to use snd_soc_component.

Change-Id: I66ff61c18fe70135fd7ac0569954263743263a3a
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2019-07-19 11:37:21 +08:00
Sandy Huang
f5d50a13b7 drm: add loader_protect for restore_fbdev_mode
the following flow is conflict with kernel logo display:
so we ignore the restore_fbdev_mode_atomic when in kernel
logo on state.

[    0.861904] vop_plane_atomic_update+0x2604/0x390c
[    0.861913] drm_atomic_helper_commit_planes+0x158/0x1d8
[    0.861922] rockchip_atomic_commit_complete+0x94/0xf0
[    0.861930] rockchip_drm_atomic_commit+0x1c0/0x1f8
[    0.861938] drm_atomic_commit+0x6c/0x84
[    0.861948] restore_fbdev_mode_atomic+0x1a8/0x224
[    0.861956] restore_fbdev_mode+0x60/0x168
[    0.861965] drm_fb_helper_restore_fbdev_mode_unlocked+0x74/0xb0
[    0.861974] drm_fb_helper_set_par+0x80/0xa0
[    0.861983] drm_fb_helper_hotplug_event+0x10c/0x124
[    0.861991] rockchip_drm_output_poll_changed+0x54/0x64
[    0.862000] drm_kms_helper_hotplug_event+0x48/0x70
[    0.862009] output_poll_execute+0x1c4/0x214
[    0.862018] process_one_work+0x208/0x3bc
[    0.862027] worker_thread+0x214/0x318
[    0.862035] kthread+0x120/0x128
[    0.862043] ret_from_fork+0x10/0x18

Change-Id: I8e9874659e9f6b3a29e34f247855b73faf42fde0
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 11:11:52 +08:00
Sandy Huang
3cbcf9bdbd Revert "arm64: dts: rockchip: rk3399: delete vop iommu PD"
This reverts commit 460dc0405a.

Change-Id: Ie25c20e79c57c4e1bc678774ad09b60fc4a135dc
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-07-19 11:11:21 +08:00
Elaine Zhang
d45556ed94 soc: rockchip: power-domain: Add protection for some special pd during startup
Use DOMAIN_RKXX_PROTECT to keepon the pd during startup.

Change-Id: I526b97ec273e056e703b6e187d0e6ffec44e730c
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-07-19 10:11:27 +08:00
Mark Yao
58d4433d5a drm: of: don't mask possible_crtcs if remote-point is disabled
Change-Id: I98d42ce5c9a5ed832e455a3d1fc88cf3ec717d69
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2019-07-11 15:35:39 +08:00