./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
If a ring has a number of TDs enqueued past the dequeue pointer, and the
URBs corresponding to these TDs are dequeued, then num_trbs_free isn't
updated to show that these TDs have been converted to no-ops and
effectively "freed". This means that num_trbs_free creeps downwards
until the count is exhausted, which then triggers xhci_ring_expansion()
and effectively leaks memory by infinitely growing the transfer ring.
This is commonly encounted through the use of a usb-serial port where
the port is repeatedly opened, read, then closed.
Move the num_trbs_free crediting out of the Set TR Dequeue Pointer
handling and into xhci_invalidate_cancelled_tds().
There is a potential for overestimating the actual space on the ring if
the ring is nearly full and TDs are arbitrarily enqueued by a device
driver while it is dequeueing them, but dequeues are usually batched
during device close/shutdown or endpoint error recovery.
Link: https://github.com/raspberrypi/linux/issues/5088
Change-Id: I858a32e6bcbb525cccff3a6d07fe77d2be67f5e7
Signed-off-by: William Wu <william.wu@rock-chips.com>
Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
Because to support half duplex, change the default queue to 1, otherwise
half duplex is not supported.
Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: Ice6c045dd70f8a41d44696b734ff4bccd511a4f0
The original error check message:
drivers/gpu/arm/midgard/backend/gpu/mali_kbase_devfreq.c:371 midgard_kbase_devfreq_init() error: 'kbdev->devfreq' dereferencing possible ERR_PTR()
Modifications here are based on corresponding codes in drivers/gpu/arm/bifrost/.
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
Change-Id: I6d74d39b92ce89e72814f3a0749b79140338b229
The protection range of spin lock is optimized to prevent
competition conditions.
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I6d3dd088fc5e5c0046df12184108b9e176ac26a7
Just like some 3D mode, the mode->crtc_* parameter will be recalculate
according the mode->flag, and we use the mode->crtc_* parameter to config
to VOP register, so we need use crtc_* parameter to do plane size check.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I0b8a7de251707bf4737b107b167be73270fe63bc
TRCM require TX/RX enabled at the same time, or need the one
which provide clk enabled at first for master mode.
It is quite a different for slave mode which does not have
these restrictions, because the BCLK / LRCK are provided by
external master devices.
So, we just set the right clk path value on TRCM register on
stage probe and then drop the trcm value to make TX / RX work
independently.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I104f168d75787d79625ca7765a1bda1e77cdde12
The USB3.0 OTG1 interface support Dual-Role Device (DRD)
features, it means that supports either device or host
operation separately, not simultaneously. In most application
scenarios, the OTG1 is used as host mode. But there are
some scenarios that need two USB devices at the same time
on the RK3588 platform, in this case, it needs to set both
the OTG0 and OTG1 in device mode. In order to improve the
OTG1 USB3.0 device performance and stability, this patch
disable the u1 and u2 state for OTG1, like what the OTG0
has done.
Change-Id: Iec3249227d7b767e7dc0904fea0424c14ae00670
Signed-off-by: William Wu <william.wu@rock-chips.com>
Support kernel read and write non-protected oem zone
in secure otp, It dependent on tee driver, Confirm that
the tee drive is open.
Change-Id: I31936256f5535bf7a6fb63a9ec52eec70c054423
Signed-off-by: Hisping Lin <hisping.lin@rock-chips.com>
If have RTL9010A ethernet, need enable CONFIG_REALTEK_PHY config
Change-Id: I935a638a3ce480046a71ce74bfe048410b5893ed
Signed-off-by: Shaoxing Chen <csx@rock-chips.com>
Reading register that do not require dclk enable to
check whether hdmi is enabled in uboot.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I951efabf3271246f2e68a4550ec166428c9cc10c
The rk3562_robot.config is specifically for robotic by
- tuning for performance, energy senseless
- removing unused modules like screen, charge, mouse, ethernet
- removing features are not for rk3562
Change-Id: I6a80bac8a0e9a9db1fc2d4ee00d6d90d5e6b00e4
Signed-off-by: Michael Zheng <zhengsq@rock-chips.com>
Modify the micorvolt of vdd_arm to support the new hardware.
Signed-off-by: Weiwen Chen <cww@rock-chips.com>
Change-Id: I6251a1b872241936da413f06671cb96afdc83ecd