aps and uaps can save power consumption when RJ45 plug out.
Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: Iec36feb6ba1d734408efa9430e7889015c9d3fd1
At the 10M mode, gmac can detect odd nibbles package sometimes,
this is valid at mii mode. Make 25M at init for rmii mode, can
solve the issue by tests.
Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: I22dc619fbc9983d4b58efc42c5c92d0f8c8aaab5
pulseaudio ucm2 config can not handle the character "," or long name,
so change it.
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Change-Id: Idd25349d3b11e058b391bb5b0c205288ccdb3e74
Increase ad gain and vcm voltage to get better performance,
If it was 10M speed, also increase eq gain.
Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: I7bad65f14a753c4d3de18c702394d1f91d47dc4a
Add the rkep device mode definition and sync with SPL.
Signed-off-by: Xiao Ya peng <yp.xiao@rock-chips.com>
Change-Id: I60e4809119cf60ddcafe45f6b5ccb11a19aa56e6
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
If the pclk of pwm is off, the interrupt will not be
generated.
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I1c68a22e875712fd7260ba8f24bd8f53cb8aa679
There is very little data left in fifo, and the controller will
complete the transmission in a short period of time, so
use readl_poll_timeout() for busy wait 10us to accelerate response.
Change-Id: I63e7cfd35dc05d0af860cc9724d66d827aa47d51
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
For files with fscrypt enabled, to allow IO and the encryption
or decryption process to ping-pong, lookahead is forcibly enabled.
Change-Id: I137b8439dcd1fd99052bef1d1b0526af0d4a611e
Signed-off-by: Cliff Chen <cmc@rock-chips.com>
Fix set pll rate err when play hdr video first time after
system boot.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ic85b8f8b20a2a588627f650ff402076decd23b63
check supplicant is dead or alive when get signal,
run normal program if supplicant is alive,
interrupting an RPC if supplicant is dead, Otherwise,
the current thread will be stuck in the optee driver.
The error is printed as follows:
INFO: task gatekeeper@1.0-:461 blocked for more than 20 seconds.
Not tainted 5.10.66 #2
task:gatekeeper@1.0- state:D stack: 0 pid: 461 ppid: 1 flags:0x0400002d
Call trace:
switch_to+0x180/0x230
__schedule+0x49c/0x704
schedule+0xa0/0xe8
schedule_timeout+0x38/0x124
wait_for_common+0xa4/0x134
wait_for_completion+0x1c/0x2c
optee_handle_rpc+0x1a4/0x6ec
optee_do_call_with_arg+0x1a4/0x298
optee_release+0x134/0x1bc
tee_release+0xa4/0x100
Change-Id: I2f82338ecccc1bc97bb5a6c25767eca4542cbcdf
Signed-off-by: Hisping Lin <hisping.lin@rock-chips.com>
The struct mm_segment_t is required by this driver only in conjunction
with Linux 5.9.0 or older. Since the struct is removed in Linux 5.18, it
must be removed from the driver as well.
Change-Id: I993800f1f6f03962dfd267a9b8e3c95f37baffe5
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
To resolve the error of "Failed to get pid pointer for ...",
when running in container environment that uses pid_namespace.
Change-Id: Iff033d9cd8af33b9f2a536cbfbe2ae1e8d71bfba
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
We should introduce both Non-secure and Secure timer
to compatible for kernel with TEE or not.
As the chapter 2.3.2 PPIs of GIC-400 TRM says:
Interrupt ID Source
30 Non-secure physical timer
29 Secure physical timer
27 Virtual timer
26 Hypervisor timer
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: If9441688d39930e71c5b217a4356f1c9972a8269
./usr/include/linux/fec-config.h:14:2: error: unknown type name 'u32'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I14edf55fe45b52f21bc18fba90f9d434a8882cfa
./usr/include/linux/rk_vcm_head.h:88:2: error: unknown type name 's32'
./usr/include/linux/rk_vcm_head.h:111:30: error: field has incomplete type 'struct __kernel_old_timeval'
./usr/include/linux/rk_vcm_head.h:116:23: error: field has incomplete type 'struct old_timeval32'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I603502aaac87c71de8ae6ad027652de23cdcf73d
./usr/include/linux/rk-camera-module.h:180:2: error: unknown type name 'u8'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I388d47ea658b5829df148c8b10eb5c466160a0e7
./usr/include/linux/rk-preisp.h:65:2: error: unknown type name 's32'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ib1812da340c745600b4e2286ca299db2c1922bce
./usr/include/linux/rk-ispp-config.h:21:43: warning: // comments are not allowed in this language [-Wcomment]
./usr/include/linux/rk-ispp-config.h:132:2: error: unknown type name 'u32'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I5d9a79af6c1f72a8e969b0664e6b48fbf9e0199f
./usr/include/linux/rk-isp2-config.h:277:21: error: implicit declaration of function 'BIT' [-Werror,-Wimplicit-function-declaration]
./usr/include/linux/rk-isp2-config.h:288:2: error: unknown type name 'u32'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I2f98bdcf50638cbe328b310d17d9417b382ab551
./usr/include/linux/rkcif-config.h:63:2: error: unknown type name 'u8'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ic1c8f6c71c7fcaffd3f44ea8c88fcbeba19f3f7d
usr/include/linux/rk-video-format.h:10: found __[us]{8,16,32,64} type without #include <linux/types.h>
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I3071683240e04039186c3a1d506835bd732c6716
./usr/include/drm/rockchip_drm.h:19:10: fatal error: 'drm/drm_file.h' file not found
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I987b8bb26023e9e7b652962e54b45c24a0231d57
./usr/include/misc/dw_hdcp2.h:15:1: warning: // comments are not allowed in this language [-Wcomment]
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ib68c8b37acdc7e7cb11abeae15d1bfd27ec945b3
./usr/include/misc/rkflash_vendor_storage.h:11:2: error: unknown type name '__u32'
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ia912e65b2f87d2c6bd57eb76019431c4084f6549
The commit 5e0fa7cfef ("pinctrl/rockchip: Sync with upstream") removed
the gpio head file from pinctrl-rockchip head file, but the iomux driver
depends on the gpio head file.
CC drivers/soc/rockchip/iomux.o
In file included from drivers/soc/rockchip/iomux.c:18:
drivers/soc/rockchip/../../pinctrl/pinctrl-rockchip.h:338:20: error: field has incomplete type 'struct gpio_chip'
struct gpio_chip gpio_chip;
^
drivers/soc/rockchip/../../pinctrl/pinctrl-rockchip.h:338:9: note: forward declaration of 'struct gpio_chip'
struct gpio_chip gpio_chip;
^
drivers/soc/rockchip/../../pinctrl/pinctrl-rockchip.h:339:28: error: field has incomplete type 'struct pinctrl_gpio_range'
struct pinctrl_gpio_range grange;
^
drivers/soc/rockchip/../../pinctrl/core.h:17:8: note: forward declaration of 'struct pinctrl_gpio_range'
struct pinctrl_gpio_range;
^
In file included from drivers/soc/rockchip/iomux.c:18:
drivers/soc/rockchip/../../pinctrl/pinctrl-rockchip.h:430:24: error: field has incomplete type 'enum pin_config_param'
enum pin_config_param param;
^
drivers/soc/rockchip/../../pinctrl/pinctrl-rockchip.h:425:6: note: forward declaration of 'enum pin_config_param'
enum pin_config_param;
^
drivers/soc/rockchip/../../pinctrl/pinctrl-rockchip.h:467:23: error: field has incomplete type 'struct pinctrl_desc'
struct pinctrl_desc pctl;
^
drivers/soc/rockchip/../../pinctrl/core.h:44:9: note: forward declaration of 'struct pinctrl_desc'
struct pinctrl_desc *desc;
^
4 errors generated.
Change-Id: Ib9596eafe1d128de9be4b4d8462ec92842f7ff3f
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
If PE support multithread, the mpidr of cpu0~cpu3 in cluster0
and cpu4~cpu7 in cluster1 is as follow:
cpu0~3: 0x81000000, 0x81000100, 0x81000200, 0x81000300.
cpu4~7: 0x81010000, 0x81010100, 0x81010200, 0x81010300.
If PE doesn't support multithread, the mpidr of cpu0~cpu3 in cluster0
and cpu4~cpu7 in cluster1 is as follow:
cpu0~3: 0x80000000, 0x80000001, 0x80000002, 0x80000003.
cpu4~7: 0x80000100, 0x80000101, 0x80000102, 0x80000103.
Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
Change-Id: Ib2fb18ad280c6c275850910f18cb4f653c4a108f
Some special devices connected to host port, the linestate
maybe SE1 (DP/DM both in High level).
The below devices are the known special devices
Wireless HID: VID = 0xa604, PID = 0x0715
RK3308BS ADB: VID = 0x2207, PID = 0x0006
In order to support these special devices, this patch
handle the linestate SE1 as device connected state,
and power on the phy if it has already suspended.
Change-Id: I55fe83150c18d6c2629fbc857790ef04cdb68da5
Signed-off-by: William Wu <william.wu@rock-chips.com>
The current logic to assign only one max packet limit
for each IN endpoint txfifo, it's not enough for some
usb functions on Rockchip platforms.
For example, on RV1106 platform usb composite device
with UVC function, if it sets one max packet limit for
IN endpoint txfifo, the UVC function streaming ep may
be assigned with ep4-in or ep5-in which have default
HW value 1048B. But the UVC function needs to support
high bandwidth isochronous transaction in a microframe
(two or three transactions per microframe), the ep4-in
or ep5-in has not enough txfifo space to fit the UVC.
In addition, to meet performance requirement, a minimum
TxFIFO size of 2x MaxPacketSize for BULK/ISOC endpoints
is recommended in DWC3 databook.
So this patch prepares at least twice txfifo for each
IN endpoint on Rockchip platforms.
Fixes: 767a360826 ("UPSTREAM: usb: dwc3: gadget: Fix IN endpoint max packet size allocation")
Change-Id: If97eb74ab6ec1a32fe162758bc8f704c15fa4f3c
Signed-off-by: William Wu <william.wu@rock-chips.com>
When the frequency before and after color switching is the
same, the resolution switching process is not performed.
Instead, go through the following process:
connector atomic check--->set avmute--->config hdmi controller
-->config vop-->connector atomic commit-->clear avmute.
This way the HDMI output will not be interrupted, the black
screen time will be shorter, and the user experience will be
better.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ie12fd3c17c5b9ba56391cbe0e976e012dffae0ba
In hdmi2.0 resolution, the phase of D2 lane is probabilistically
ahead of other lanes. Set phy deskew FIFO works on shared pointer
to fix this problem.
According to vendor, this patch is also available for frl mode.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ic6f5111ede5a553fb6d6511bd340d4f2010f3fe7