[2.353901] rk-pcie 3c0000000.pcie Link up. LTSSM is 0x1
[2.354036] rk-pcie 3c0000000.pcie: PCI host bridge to bus 0000 :00
[2.354058] pci_bus 0000:00: root bus resource [bus 00-0f]
[2.354074] pci_bus 0000:00: root bus resource [??? 0x4000000-0xf40fffff flags 0x0]
...
The original link event is checking LTSSM and ensure it's in L0. However
enabling ASPM will make accessing config space failed. So commit
824c99261a ("PCI: rockchip: dw: Update link up check state") remove the LTSSM
check. But it introduce a situation that if link still in training and host
bridge tries to enumerate slot, it will fail unexpectedly. Fix this by removing
rk_pcie_link_up and let dwc core use its own port logic to decide the link state.
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Change-Id: I41f05a8aa89ac33782d569ffa7d466cf95981c68
The PLDO6 must be always on. if the PLDO6 is off, the PMIC
will be abnormal.
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
Change-Id: I5c2cf8f0d2ba3cb08cd7538d998857d8c2db55f2
In the display-serdes panel driver, it has the same name
"serdes-panel" as rkserdes panel device. When register
rkserdes panel device, it may mismatch to the display-serdes
panel driver. To avoid this issue happen, change the rkserdes
panel device name. For the same reason, change the rkserdes
panel driver name.
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Ic146472c40252b3e55b2d46f1a6bfd099eb013c3
1. There are two rkvenc cores and share a iommu domain. When they work at
the same time, the arg with iommu fault handle will be mismatch with
real device.
So find the real device according to iommu_dev.
2. config appropriate timeout threshold and it can trigger hw timeout
when pagefault.
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: If816e43c9732d6cefc60d80efbaf297001d500ff
add private v4l2 event: RK_HDMIRX_V4L2_EVENT_AUDIOINFO
when audio info changed, driver will queue event and apps
should chang audio record parameters
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I6fa6c951d648f546655475eede21d1769444741c
If the scl has been pulled low for a long time and is not released,
at this time, because the exception needs to end the I2C, a reset
needs to be done to ensure that the state machine is restored. Set
the timeout time to 200ms, and the debounce of the scl is pulled
low to 100ms.
Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: Iee0c2afe2fbd59a30d1b7ef486d0856b00b88cc8
If autostop mode is enabled, such as RK3588, autostop mode requires
statistics on the transmission length; for tx only mode, the device
address is also counted as one byte, so the judgment conditions become
different.
Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: I91c0b68fabb60952f630a98133423aa4cb1b9b48
The SYSCON driver was designed for using memory areas (registers)
that are used in several subsystems. We can use bits in one
register for various purposes and thus should be handled by
various kernel subsystems.
In Rockchip RK3328, the output only GPIO_MUTE pin, originally for
codec mute control, can also be used for general purpose. It is
manipulated by the GRF_SOC_CON10 register in GRF. Aside from the
GPIO_MUTE pin, the HDMI pins can also be set in the same way.
Therefore, we need to enable this feature in rockchip_defconfig.
Change-Id: I0036bb8d3fb007f0ccab5d340d179886926a98ed
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
The SYSCON driver was designed for using memory areas (registers)
that are used in several subsystems. We can use bits in one
register for various purposes and thus should be handled by
various kernel subsystems.
In Rockchip RK3328, the output only GPIO_MUTE pin, originally for
codec mute control, can also be used for general purpose. It is
manipulated by the GRF_SOC_CON10 register in GRF. Aside from the
GPIO_MUTE pin, the HDMI pins can also be set in the same way.
Therefore, we need to enable this feature in rockchip_linux_defconfig.
Change-Id: If83f232121fb9fe54b6ff362d7911edf229d3878
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Fixes: 006505ca76 ("misc: add rockchip standard EP function driver")
Signed-off-by: Xiao Ya peng <yp.xiao@rock-chips.com>
Change-Id: I602323f9cedc6edf94f951b9b9c9787b3a271550
This patch drop the unused config src/dst_interleace_size.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I78dba866c6d7c6c755c77d1558a8449716bcc1aa
This patch use the interleaved dma transfer API for multi-dais
data, now, let's drop the legacy implementation.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I8f217e25ae68017eff3eaedfe1d3475cbbaccde6
This patch add support for interleaved transfer which used
for interleaved audio or 2d video data transfer.
for audio situation, we add 'nump' for number of period frames.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I502ea9c86c8403dc5b1f38abf40be8b6ee13c1dc
for compatiblility between arm32 and arm64, giv2 and giv3,using 64-bits
variable to manage the cpu's affinity.
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Change-Id: Ic5ce758d4711c039be9dc52df8f0ebbbdfcc1244
for rpmsg, it needs to set pending reg between different os, so allow to
config pending function between different os.
Fixes: 2e7658ef57 ("irqchip/gic: support config amp os irqs")
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Change-Id: I4b06f8a692e34c339d4facb40b8120fdbe1d7bcd
It will be more safer for regulator consumer devices to power on
after their power suppliers are stable. And regulator consumer devices
need to completely shut down, then power up for a reset cycle.
Therefor, regulator providers need to be make sure shutdown completely.
- startup-delay-us can be used to wait regulator providers be powered on
good, according their power-up time.
- off-on-delay-us can be used to wait regulator providers be shut down
completely.
1. cameraN_vcc12v_buck have a approximate ~1ms power on rise time
and ~13-~14ms power off fall time
2. vcc5v0_buck uses MPQ4317 which have a approximate ~1.5ms
EN(on)->PG(high) delay and ~0.8ms EN(off)->PG(low)
Change-Id: I8f23a6a4b53c8760f62c64758a481ad86be4da16
Signed-off-by: Cody Xie <cody.xie@rock-chips.com>
3d fp mode pixel clock needs to be doubled. mode->crtc_clock
is already a doubled clock, don't have to multiply it by 2.
At the same time, this error will cause the audio cts calculation
error so that hdmi has no sound output. This commit can also
fix the problem.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I7d080f9779a640649c149f4b21072597cf0c0cf7
Avoid extra 120ms delay during system resume.
The xHC controller may signal wake up to 120ms before showing which usb
device caused the wake on the xHC port registers.
The xhci driver therefore checks for port activity up to 120ms during
resume, making sure that the hub driver can see the port change, and
won't immediately runtime suspend back due to no port activity.
This is however only needed for runtime resume as system resume will
resume all child hubs and other child usb devices anyway.
Fixes: 253f588c70 ("xhci: Improve detection of device initiated wake signal.")
Signed-off-by: Basavaraj Natikar <Basavaraj.Natikar@amd.com>
Acked-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20230428140056.1318981-3-Basavaraj.Natikar@amd.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 1c024241d0)
Change-Id: Icf4e8c97b3d5f6e9550fcad0e748c7badf1b22df
Add rockchip_hardlock_notify to save pc of the cpu that is hard lock,
the pc is used for minidump cpu hard lock stack.
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
Change-Id: Ie542d981f3f12ac1eb3a2f425b76780a04f220cf
1. save more data of cpu sp and general registers
2. save hardlock cpu pc to note section
3. save hang task context to note section
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
Change-Id: I52bfc419aeff1c049c5c88e77ed29d7be56601b7
Before sending the stop command, there may still be some
valid data in the fifo that has not been transmitted to
the TF card. Therefore, it is necessary to increase the
determination of fifo count and reset the controller
before send the stop command.
Fixes: 6eca689b99 ("mmc: dw_mmc: Workaround for RV1106/1103 sdmmc")
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: I766673b25157a77018ac127e2ad9fb3f9672904b