drm_atomic_set_property isn't export function, so we set default prop
vale to instead of it.
Change-Id: I4acc6ddd045415aa180d467b45085609408e2447
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Esmart/Smart should add offset in y mirror mode.
Change-Id: I5299543006c702c1492ee740460d0b7536e7d6e8
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Add support to change thermal governor to dummy, and the system
monitor will manage cooling devices.
This also fixes the following build errors when build as a module.
ERROR: modpost: "__governor_thermal_table_end" [drivers/soc/rockchip/rockchip_system_monitor.ko] undefined!
ERROR: modpost: "__governor_thermal_table" [drivers/soc/rockchip/rockchip_system_monitor.ko] undefined!
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Ia68b5bf2b6d94cb13fafc5cde74bc80b32dfac0a
In order to fix the following error when enable DEBUG_FS.
drivers/clk/rockchip/clk-pll.c:1643:1: warning: data definition has no type or storage class
error, forbidden warning:clk-pll.c:1643
late_initcall(boost_debug_init);
^~~~~~~~~~~~~
drivers/clk/rockchip/clk-pll.c:1643:1: error: type defaults to 'int' in declaration of 'late_initcall' [-Werror=implicit-int]
drivers/clk/rockchip/clk-pll.c:1643:1: warning: parameter names (without types) in function declaration
error, forbidden warning:clk-pll.c:1643
drivers/clk/rockchip/clk-pll.c:1623:19: warning: 'boost_debug_init' defined but not used [-Wunused-function]
error, forbidden warning:clk-pll.c:1623
static int __init boost_debug_init(void)
^~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
scripts/Makefile.build:333: recipe for target 'drivers/clk/rockchip/clk-pll.o' failed
make[4]: *** [drivers/clk/rockchip/clk-pll.o] Error 1
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I6aa341ea05925f6c05285329fd56b7c1e7f2307b
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
stress test:
1. Antutu, use governor simpleondemand
2. Need for Speed, use governor simpleondemand
3. Glmark2, use userspace, scanning frequency
Change-Id: Ibe27380e582b193d900b0d55da3567ce553c32df
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
To support ddr frequency scaling function, we need
enable dmc and dfi node.
Change-Id: I84ea6bff679365d86937ff10bcdf466ea31901fb
Signed-off-by: Lin Huang <hl@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Add support to check initial rate and voltage according to opp table,
limit rate and update voltage according to temperature.
Change-Id: I146787e07be63f9f7eeaf93e8a1594809dcc23e8
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
DRM_FORMAT_NV20 and DRM_FORMAT_NV30 is a 2 plane format suitable for
linear layouts, this two format is similar to NV15 has no padding
between component, but NV15 is 4:2:0 sub-sampling, NV20 is 4:2:2
sub-sampling and NV30 is no-sampling.
The '20' and '30' suffix refers to the optimum effective bits per
pixel which is achieved.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I84da7e03125e675f274c6307128b4b7b307767cc
for example:
Use CLuster0 as cursor win for vp0.
&vp0 {
cursor-win-id = <ROCKCHIP_VOP2_CLUSTER0>;
};
Change-Id: I10f7921928fbf7ff803c55a95cbce62df658fbed
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
We have some plane not registered to drm core(Such as cluster
plane on some linux system), so they don't have pstate.
And also we don't need to check plane state for oetf for
a inactived plane(has no fb).
Change-Id: I909b665397c3df530ff0f466e0d654dcbb3f1a40
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
keep sdr2hdr result consistent between VOP and GPU
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I3ef6b289978d4b0c083d99e93d97a95b2e7f0b25
Add a BACKGROUND property for each crtc.
8 bit for every color channel(r/g/b/y/u/v).
Change-Id: I9439bf16a8142e936508e843cc25b6263e2f661d
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Fixes: 8c59d20b75 ("drm/rockchip: vop2: Add color key support")
Change-Id: I449f32eb9e69297b2c37feb85611a550310f2304
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
the fs raw bit will be cleared by vop2_isr() fs irq and lead to
vop2_wait_for_fs_by_raw_status() time out, so we use
vop2_wait_for_fs_by_done_bit_status() to wait done bit from 1 to 0 is
more reliable.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ice35fb9bfe6c2ef7a49496b15b9f58bf93e95d4e
We thought when userspace switch hdmi to hdr mode, it must
give vop a hdr plane, but We meet a case: composer give
vop only one sdr plane, but switch hdmi to hdr mode.
so we don't check the plane number for sdr2hdr_en;
Change-Id: I4804a88321af84328735d6499ac9df610bf2cb85
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
win_mask is more safe than plane_mask on crtc_state,
because crtc_state may changed by many interface.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Change-Id: I886c8e1e1c0505e46292721de05d9be7c167d956
we must make sure the port_mux configuration is take effet
before configure a window that is moved from another VP.
Change-Id: I4ca581292e08ef30cc4b6eb47aef02e678f38a66
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
port_mux register is shared by all the three(four on rk3588)
video ports, and the config done vsync is controlled by
layer_sel_regdone_sel bits.
We must make sure the previous configuration is take
effect, when change port_mux for another vp.
Change-Id: Ic4bd58f52760080f2f264f37cc6f01a9cd58939f
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
There maybe a case a new wb commit is commit when
the last wb has not completed, this may override
the fs_vsync_cnt.
So counter vsync for every wb job independently.
Change-Id: I8e8c527a49252dcc4b0b1ff591523de5a33ae5ba
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>