linux/drivers/staging
Chen-Yu Tsai 70b0911ad8 media: hantro: jpeg: Remove open-coded size in quantization table code
The quantization tables used in the Hantro JPEG encoder driver are
implicitly sized by the data they contain, but the loop that scales
the tables based on the compression quality hard codes the size to
64. No code exists to check whether the two actually match.

Commit 85bdcb7eaa ("media: hantro: Write the quantization tables in
proper order") introduced two new tables, with sizes hardcoded to 64,
but still no checking if all the sizes are the same.

Commit 41479adb5e ("media: hantro: Avoid global variable for jpeg
quantization tables") added the macro JPEG_QUANT_SIZE, but only the
newly added fields used this.

This has resulted in code scattered with magic numbers and array sizes
that happen to match up, without any sort of sanity checking to enforce
it.

Drop the hard-coded array sizes, replace the magic loop count with
a proper JPEG_QUANT_SIZE macro, and add BUILD_BUG_ON()s to check
that all the table sizes match up.

Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2022-01-28 13:27:39 +01:00
..
android staging: android: ashmem: add size field in procfs fdinfo 2021-06-18 13:02:40 +02:00
axis-fifo staging: axis-fifo: Use platform_get_irq() to get the interrupt 2021-12-30 11:54:56 +01:00
board staging: board: Fix uninitialized spinlock when attaching genpd 2021-07-21 11:22:15 +02:00
clocking-wizard clk: staging: correct reference to config IOMEM to config HAS_IOMEM 2021-08-17 20:03:00 +02:00
emxx_udc staging: emxx_udc: fix alignment issues 2021-05-25 18:25:52 +02:00
fbtft staging: fbtft: sh1106: use new macro FBTFT_REGISTER_SPI_DRIVER 2021-12-03 15:05:12 +01:00
fieldbus staging: fieldbus: anybus: reframe comment to avoid warning 2021-10-30 11:12:17 +02:00
fwserial tty: drop put_tty_driver 2021-07-27 12:17:21 +02:00
gdm724x staging: use eth_hw_addr_set() in orphan drivers 2021-10-20 19:33:59 +02:00
greybus staging: greybus: audio: Check null pointer 2022-01-06 14:46:11 +01:00
gs_fpgaboot staging: fpgaboot: change FPGA indirect article to an 2021-06-09 14:26:54 +02:00
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: jpeg: Remove open-coded size in quantization table code 2022-01-28 13:27:39 +01:00
most staging: most: dim2: use consistent routine naming 2021-12-28 17:10:13 +01:00
mt7621-dts staging: mt7621-dts: remove 'gdma' and 'hsdma' nodes 2021-11-15 10:29:12 +01:00
nvec staging: nvec: Fix a bunch of kernel-doc issues 2021-05-10 11:19:24 +02:00
octeon Staging driver update for 5.16-rc1 2021-11-04 07:56:22 -07:00
octeon-usb staging: octeon-hcd: Directly include linux/of.h 2021-06-10 13:09:15 +01:00
olpc_dcon kernel.h: split out panic and oops helpers 2021-07-01 11:06:04 -07:00
pi433 staging: pi433: add comment to rx_lock mutex definition 2022-01-06 15:00:29 +01:00
qlge Staging driver update for 5.16-rc1 2021-11-04 07:56:22 -07:00
r8188eu staging: r8188eu: rename camelcase variable uintPeerChannel 2022-01-06 15:15:04 +01:00
rtl8192e Staging drivers update for 5.17-rc1 2022-01-12 11:18:49 -08:00
rtl8192u staging: rtl8192u: remove some repeated words in some comments 2021-12-20 17:47:22 +01:00
rtl8712 staging: rtl8712: Fix alignment checks with flipped condition 2021-12-09 08:57:22 +01:00
rtl8723bs staging: rtl8723bs: removed unused if blocks 2021-12-28 17:08:07 +01:00
rts5208 exit: Rename complete_and_exit to kthread_complete_and_exit 2021-12-13 12:04:45 -06:00
sm750fb staging: sm750fb: Rename vScreen to v_screen in lynxfb_crtc 2021-07-28 20:17:26 +02:00
unisys staging: unisys: visornic: removed a blank line at the end of function 2021-11-25 17:38:53 +01:00
vc04_services staging: vc04_services: rename BM2835 to BCM2835 in headers comments 2022-01-06 14:49:34 +01:00
vme
vt6655 staging: vt6655: drop off byRxMode var in device.h 2021-12-28 17:10:47 +01: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: wlan-ng: Removed unused comments 2021-11-15 10:02:05 +01:00
Kconfig Merge 5.16-rc3 into staging-next 2021-11-29 08:03:05 +01:00
Makefile Merge 5.16-rc3 into staging-next 2021-11-29 08:03:05 +01:00