Vcnt is stored in the upper 16 bits.
We should wait for the frame start irq status from
low to high.
Fixes: e6113fb4c5b3 ("drm/rockchip: vop2: wait for next frame when close to
frame start of previous vp")
Change-Id: I8dd0930800ada9796f616d9b3ec1962d213aa9b3
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
isp2.0 one frame read back many times and gain
address will updated at each read back end. To make
sure gain buffer update right, so one last read back
to the frame start to config next buf, and the frame end
will update to shadow reg for ready to receive next frame.
Change-Id: I1be92f92f9489b7d1ffb5ca72a510e9ea45f5ab0
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
tips:
1. rcb_size == 0, skip it.
2. if current rcb_size is larger then the remaining buffer size,
skip it instead of break.
Change-Id: Ide37ccbf0af9ceb3f4a6f6fe5e7045bfbd8ddc74
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
This patch add uevent to notify the application layer how much ppm
is different between USB clk and AUDIO clk.
The event include two parts USB_STATE and PPM. For example:
g_audio_work: sent uac uevent USB_STATE=SET_AUDIO_CLK PPM=12
g_audio_work: sent uac uevent USB_STATE=SET_AUDIO_CLK PPM=-1
Note: The ppm compensation depends on the method implement of
clk drift and compensation in the rockchip_pdm.c driver. So if
you want the ppm compensation to take effect, please make sure
the commit "ASoC: rockchip: pdm: Add support for clk compensation"
is merged.
Signed-off-by: Ren Jianing <jianing.ren@rock-chips.com>
Change-Id: Id25411397fe376342c773c11f1989ed5854f8ad9
This reverts commit 52d7b98f85.
There is no need to keep HZ=1000 after commit 3be6453a90
("kthread: do not preempt current task if it is going to call schedule()").
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I42632c8dab553762574249e7fc219a50a9cf5323
This reverts commit 9a883c648a.
There is no need to keep HZ=1000 after commit 3be6453a90
("kthread: do not preempt current task if it is going to call schedule()").
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Id035e01cbf274dce0e6f12caef7f4eeb7efc2406
Sync to gki_defconfig
CONFIG_BLK_DEV_LOOP_MIN_COUNT must be at least 16 in order
to pass VTS.
Change-Id: I3a0f0a77f8a60cf8a3e48683657f10e160927c58
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Sync to gki_defconfig
CONFIG_BLK_DEV_LOOP_MIN_COUNT must be at least 16 in order
to pass VTS.
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I15e46ac79dc6f149914a540e311369177bccdc23
Sync to gki_defconfig
Before:
text data bss dec hex filename
13465267 4345690 2113400 19924357 1300585 vmlinux
After:
text data bss dec hex filename
13473410 4411226 2113400 19998036 1312554 vmlinux
Change-Id: I023ce20549e9d65198b8a23affe4c9739f867103
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Set all windows to activated video port at init,
try to avoid change port_mux when display on.
Change-Id: I29b7b0b0a610580ac6e07cc1d8ef35b51d86b8b0
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Read port_mux register to get the window and vp map.
Change-Id: If18c55754592df2e9bb8e3fe93e66624cd2cedb9
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Only config done the current vp at the first 3/4 frame time
if there is another vp waiting for config done.
Change-Id: I0ee33182cf11cd6d502e0bf02684c8b09f3df26b
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
The config done bits of VP0, VP1, VP2 on RK3568 stands on
the first three bits on REG_CFG_DONE register without mask bit.
If two or three config done events happens one after
another in a very shot time, the flowing config done
write may override the previous config done bit before
it take effect:
1: config done 0x8001 for VP0
2: config done 0x8002 for VP1
0x8002 may override 0x8001 before it take effect.
So we do a read | write here.
Change-Id: I35ad380b1c2751542697c9c7cdacea12dd08d924
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
The page offset is need point to empty page. And also need to deal
case with ECC error.
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: I459345f18823b63cc5084be63c9a64c36838a151
avoid to map vaddr when vb2_plane_vaddr at interrupt
Change-Id: Id391a405973a9838fbc97065e4e27f6b88c07b8c
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This patch register boot mode into kernel pre restart call chain
to support 'reset [cmd]'
e.g.
/# fiq
Welcome to fiq debugger mode
Enter ? to get command help
debug> help
FIQ Debugger commands:
reset [<c>] Hard reset with command <c>
debug>
debug> reset loader
DDR Version V1.04 20201030
DDR4, 328MHz
BW=32 Col=10 Bk=4 BG=2 CS0 Row=16 CS=1 Die BW=16 Size=2048MB
...
boot mode: loader
...
RKUSB: LUN 0, dev 0, hwpart 0, sector 0x0, count 0x1d1f000
Change-Id: Ic1792bdd0262c77a09fd780c7ac3e6d912b09008
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
This patch renames kernel_i2c_restart to kernel_pre_restart
for general purpose.
This call chain is expected to be executed before kernel_restart
to do something before reset system. such as, i2c restart,
boot mode config.
Change-Id: I67c80c297ca5de83deb4736b5dab0f2c9c8543a6
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>