linux/drivers/staging
Chen-Yu Tsai 230d683ae0 media: hantro: Hook up RK3399 JPEG encoder output
The JPEG encoder found in the Hantro H1 encoder block only produces a
raw entropy-encoded scan. The driver is responsible for building a JPEG
compliant bitstream and placing the entropy-encoded scan in it. Right
now the driver uses a bounce buffer for the hardware to output the raw
scan to.

In commit e765dba11e ("hantro: Move hantro_enc_buf_finish to JPEG
codec_ops.done"), the code that copies the raw scan from the bounce
buffer to the capture buffer was moved, but was only hooked up for the
Hantro H1 (then RK3288) variant. The RK3399 variant was broken,
producing a JPEG bitstream without the scan, and the capture buffer's
.bytesused field unset.

Fix this by duplicating the code that is executed when the JPEG encoder
finishes encoding a frame. As the encoded length is read back from
hardware, and the variants having different register layouts, the
code is duplicated rather than shared.

Fixes: e765dba11e ("hantro: Move hantro_enc_buf_finish to JPEG codec_ops.done")
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-11-30 12:20:04 +01:00
..
android
axis-fifo staging: axis-fifo: convert to use miscdevice 2021-09-13 08:49:53 +02:00
board
clocking-wizard
emxx_udc
fbtft staging: fbtft: Make fbtft_remove_common() return void 2021-10-13 14:30:38 +02:00
fieldbus staging: fieldbus: anybus: reframe comment to avoid warning 2021-10-30 11:12:17 +02:00
fwserial
gdm724x staging: use eth_hw_addr_set() in orphan drivers 2021-10-20 19:33:59 +02:00
greybus staging: greybus: uart: fix tty use after free 2021-09-14 09:18:18 +02:00
gs_fpgaboot
iio staging: iio: ad9832: convert probe to device-managed 2021-10-17 11:05:54 +01:00
ks7010 staging: use eth_hw_addr_set() for dev->addr_len cases 2021-10-20 19:33:58 +02:00
media media: hantro: Hook up RK3399 JPEG encoder output 2021-11-30 12:20:04 +01:00
most staging: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-20 19:33:58 +02:00
mt7621-dma staging/mt7621-dma: Format lines in "hsdma-mt7621.c" ending with an open parenthesis 2021-09-13 08:49:54 +02:00
mt7621-dts staging: mt7621-dts: add missing SPDX license to files 2021-10-25 12:06:26 +02:00
netlogic
nvec
octeon Staging driver update for 5.16-rc1 2021-11-04 07:56:22 -07:00
octeon-usb
olpc_dcon
pi433 staging: pi433: goto abort when setting failed in tx_thread 2021-09-27 17:30:27 +02:00
qlge Staging driver update for 5.16-rc1 2021-11-04 07:56:22 -07:00
r8188eu Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2021-11-10 16:15:54 -08:00
ralink-gdma
rtl8192e staging: rtl: use eth_hw_addr_set() 2021-10-20 19:33:59 +02:00
rtl8192u staging: rtl8192u: fix control-message timeouts 2021-10-26 18:44:38 +02:00
rtl8712 Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2021-11-10 16:15:54 -08:00
rtl8723bs Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2021-11-10 16:15:54 -08:00
rts5208 SCSI misc on 20211105 2021-11-05 08:42:02 -07:00
sm750fb
unisys SCSI misc on 20211105 2021-11-05 08:42:02 -07:00
vc04_services staging: vchiq_core: get rid of typedef 2021-10-30 11:12:40 +02:00
vme
vt6655 staging: vt6655: Rename `dwAL7230InitTable` array 2021-10-26 18:45:09 +02:00
vt6656 staging: vt6656: Remove filenames in files 2021-08-28 08:33:33 +02:00
wfx staging: wfx: sta: Fix 'else' coding style warning 2021-09-17 16:23:42 +02:00
wlan-ng staging: use eth_hw_addr_set() in orphan drivers 2021-10-20 19:33:59 +02:00
Kconfig PCI: mt7621: Add MediaTek MT7621 PCIe host controller driver 2021-10-21 10:59:18 -05:00
Makefile PCI: mt7621: Add MediaTek MT7621 PCIe host controller driver 2021-10-21 10:59:18 -05:00