For products with light performance like RK3036, the playback
function may not be so important, and the stereo recording can
be guaranteed first. Therefore, the default left channel is ADC
input data.
Change-Id: Iffc51986f58fd5946a35ea39d12104b2e1f2d39f
Signed-off-by: Hongming Zou <hongming.zou@rock-chips.com>
In some case we need to select the CONFIG_ROCKCHIP_VVOP but unselect the
CONFIG_ROCKCHIP_VOP and CONFIG_ROCKCHIP_VOP2, this patch can fix it to
not do vop iommu map/unmap.
Change-Id: Ib48a11fd1dc6c0230701edb94c19c9f2a1a08a0a
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
enable kernel config for docker
for rk356x:
make ARCH=arm64 rockchip_linux_defconfig rockchip_linux_docker.config
for rk3588:
make ARCH=arm64 rockchip_linux_defconfig rk3588_linux.config rockchip_linux_docker.config
Signed-off-by: Jianlong Wang <jianlong.wang@rock-chips.com>
Change-Id: Idf52c56a30d6918ea12fb985c14dacccfaeb2583
the vop is binded before iommu init, if alloc hdr gem object in
vop bind stage, which may get the wrong dma address. To fix this
issue, alloc hdr gem object when first used it.
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I99359cc345cb49aee1ce34ff6d5ee33d04ac2283
Use aviif_chg_irq interrupts to monitor scenarios where
the TMDS signal is not disconnected but the resolution,
frame rate, color range or image format changes.
Change-Id: I2f6e3d0d734de1c5a8033b00d3b6b14d1815f6ca
Signed-off-by: Wangqiang Guo <kay.guo@rock-chips.com>
As the number of Rockchip drivers increase, entries in SoC menu looks
scattered with other SoC drivers. Make a submenu for Rockchip drivers
to make it visibly clear while selecting Rockchip SoC specific drivers.
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ia657e184a32c9b28f6ddd585838890ba5ec814cf
There is a race contition seen in rockchip platform which seems expose a long
existing bug in PCI sysfs code.
1. pci_bus_add_device() called pcibios_bus_add_device() or
pci_fixup_device() but have not called pci_create_sysfs_dev_files() yet.
Meanwhile pci_sysfs_init() is running and pci_create_sysfs_dev_files()
was called for newly registered device. In this case function
pci_create_sysfs_dev_files() is called two times, ones from
pci_bus_add_device() and once from pci_sysfs_init().
2. pci_sysfs_init() is called. It first sets sysfs_initialized to 1
which unblock calling pci_create_sysfs_dev_files(). Then another bus
registers new PCI device and calls pci_bus_add_device() which calls
pci_create_sysfs_dev_files() and registers sysfs files. Function
pci_sysfs_init() continues execution and calls function
pci_create_sysfs_dev_files() also for this newly registered device. So
pci_create_sysfs_dev_files() is again called two times.
The call trace looks like:
[ 2.822232] [ T143] sysfs: cannot create duplicate filename '/devices/platform/fe170000.pcie/pci0002:20/0002:20:00.0/0002:21:00.0/config'
[ 2.822240] [ T143] CPU: 1 PID: 143 Comm: rk-pcie Not tainted 5.10.66 #56
[ 2.822245] [ T143] Hardware name: Telpo RK3588 F206 Board (DT)
[ 2.822251] [ T143] Call trace:
[ 2.822262] [ T143] dump_backtrace+0x0/0x1c8
[ 2.822269] [ T143] show_stack+0x1c/0x2c
[ 2.822276] [ T143] dump_stack_lvl+0xdc/0x12c
[ 2.822282] [ T143] dump_stack+0x1c/0x64
[ 2.822289] [ T143] sysfs_warn_dup+0x6c/0x8c
[ 2.822296] [ T143] sysfs_create_bin_file+0xe4/0x130
[ 2.822303] [ T143] pci_create_sysfs_dev_files+0x50/0x210
[ 2.822310] [ T143] pci_bus_add_device+0x30/0xac
[ 2.822316] [ T143] pci_bus_add_devices+0x44/0x88
[ 2.822321] [ T143] pci_bus_add_devices+0x70/0x88
[ 2.822327] [ T143] pci_host_probe+0x78/0xb0
[ 2.822335] [ T143] dw_pcie_host_init+0x308/0x3f8
[ 2.822340] [ T143] rk_pcie_really_probe+0x954/0xe04
[ 2.822347] [ T143] kthread+0x13c/0x344
[ 2.822353] [ T143] ret_from_fork+0x10/0x30
There are continuous reporting about this bug[1] can be found here[1].
The above link leads me to the fix[2]. Upstream kernel has contained the fix:
0ad52e381d85eb86906749e2b8073cdc2265844b ("Convert "config" to static attribute")
However there are still corner bugs around directory create. So Bijorn created
a Bugzilla item[3] for it. After a long time, Korneliusz Osmenda pushed a new
patch to fix it. Then we wait for another long period of time without any update.
IMO, [4] is better than other proposes. So just backport the better fix into vendor
tree.
[1] https: //lore.kernel.org/all/m3eebg9puj.fsf@t19.piap.pl/
[2] https: //patchwork.kernel.org/project/linux-pci/patch/20210416205856.3234481-2-kw@linux.com/
[3] Bug: https://bugzilla.kernel.org/show_bug.cgi?id=215515
[4] https: //patchwork.kernel.org/project/linux-pci/patch/4469eba2-188b-aab7-07d1-5c77313fc42f@gmail.com/
Signed-off-by: Korneliusz Osmenda <korneliuszo@gmail.com>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
[Shawn: backport and reword to explain what happened]
Change-Id: Ib0a54bc2204afa7d9136e8d3156b00ec6aa4d8b3
(cherry-picked from https: //patchwork.kernel.org/project/linux-pci/patch/4469eba2-188b-aab7-07d1-5c77313fc42f@gmail.com/)
Set the rga node to be "disabled" defaultly for rk3288.
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: Idccb5dfd79e7bfd5005307f5fba576df1ff03a0d