Separate the process of device matching by the different SoC macro
definitions, which can reduce memory usage.
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: Ice50f15e64f7d1ae353ecfe462f7ba3fab017817
The remote end point ports should be at bridge node.
Fixes: 57816781c4 ("arm64: dts: rockchip: rk3576-vehicle-evb: init v20 dts files")
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I6d01f68e5e5a5a3239d006f60fe97a0014918301
Before:
text data bss dec hex filename
5227569 2360752 112328 7700649 7580a9 vmlinux
After:
text data bss dec hex filename
5227569 2308528 112328 7648425 74b4a9 vmlinux
Change-Id: I55e5190b4410c80f8c40deeb631650eaab28f23b
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Only support panels which all parameters from device tree.
Save boot time about 2ms on rk3126-bnd-d708 board.
Before:
text data bss dec hex filename
59767 296 84 60147 eaf3 drivers/gpu/drm/panel/panel-simple.o
After:
text data bss dec hex filename
7547 296 84 7927 1ef7 drivers/gpu/drm/panel/panel-simple.o
Change-Id: Ie075ff5c84c1807029873555f58bd13d41350abf
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
This property is used to prevent RC from calling devices to enter
D3cold if they need to keep working when system is suspended. The classic
user is wireless device and computing cards which need to work standalone
when system is suspened. Currently wireless devices deal with it by
controlling power and #PERST by themselves because they have rfkill driver
which could did it in front of the wireless driver. But computing cards couldn't.
In ACPI point of view, we could allow users to configure the D3Cold state for
each PCI device through the sysfs attribute 'sys/bus/pci/devices.../d3cold_allowed'.
Then the PCIe driver and firmware could work together to meet the requirement. But
in DT way, we have to invent a new property to cover both of these.
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Change-Id: Ia755f48d11f84f292a4aede38d2653b73f8d11b8
If dynamic dptx power domain ctrl is enabled and dptx power
domain not enabled when init dptx controller, the dptx power
domain will be disabled though the uboot logo is enable. this
will cause display issue. To avoid this issue, it need enable
dptx power domain when enable uboot logo.
Change-Id: I3105556de3dee5e592242150935133cce0971551
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Fix the modpost error "device_is_dependent" undefined by
adding device_link in ehci_platform_priv.
Fixes: 68850661b5 ("usb: host: ehci-platform: Add device_link between the ehci and companion")
Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I0552eab4cc45750e0c4ea494880667a29998f6b0
1. Select the usb2 phy interrupt logic clock from OSC clock
to support interrupt detection if VD_LOGIC is powerdown.
2. Set the linestate filter time control register depends
on the OSC 24MHz clock during suspend.
Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: Ib265747013b0a08dc0599df25e40dce306ccb289
For IOMMU devices, the mapped size may be larger than the requested
alloc size, which may result in inconsistent sizes being used for
unmap.
[ 12.286016] iova: 0x0000000000000000 already mapped to 0x000000000c201000 cannot remap to phys: 0x000000001369f000 prot: 0x3
[ 12.287163] [drm:rockchip_gem_iommu_map] *ERROR* failed to map buffer: size=-98 request_size=4096
[ 12.299439] iova: 0x0000000000000000 already mapped to 0x000000000c201000 cannot remap to phys: 0x000000000c2b8000 prot: 0x3
[ 12.300541] [drm:rockchip_gem_iommu_map] *ERROR* failed to map buffer: size=-98 request_size=2785280
Fixes: 2ba5e1d681 ("drm/rockchip: gem: Set size of the allocated object when create gem")
Change-Id: I3496544e5a4eb65dde657f8ed3890f4db933258f
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
200M is not an integer frequency.
300M is more suitable.
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Change-Id: I7a6ce23a47691fbdc6180f9cb63b832950bc2f59
The infinitely cyclic without CPU intervention use the single desc,
so, should always return DMA_IN_PROGRESS to match its status.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I1e104d2eadb5ba2c7271a830fa35a047891562c0
sai mclk is not controlled by sai controller driver but peri device driver,
so set it here for saving system suspend power.
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: Ibca621eb2975b06a7fd2d805db06b8dd70ec0596
When the ISR is blocked, it's possible that the original job has already
been released while the scheduler is now running a new job. Therefore,
it is necessary to check whether the current job has already triggered a
hardware interrupt.
Change-Id: If8999b07c76c5217f47419908f20945b6f619e67
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
We may want to know how many size of a gem object is allocated, but
this size in rockchip_gem_object for no-IOMMU devices will not be set.
There are two ways to use rockchip GEMs, one is to create GEMs via DRM,
and the other is to import buffer created by other devices via DMA-BUF
and map it. For no-IOMMU devices, neither of them will set the buffer
size.
Let's set the size in rockchip_gem_object when we create a new rockchip
gem.
Fixes: c1c9524d3f ("drm/rockchip: debugfs: optimize dump buffer file name and size")
Change-Id: I396bf60a0d49d6f703044f9d354aa37312c9cc82
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>