[PATCH v3 00/17] media: rkisp1: Misc bug fixes and cleanups

Laurent Pinchart
2022-03-19T16:31:40Z

Hello,

This series fixes multiple issues and performs further cleanups for the
rkisp1 driver.

Patches 01/17 to 07/17 fix issues in the error paths at probe time that
lead to kernel crashes in case of errors. The .remove() path is also
improved as a result.

Patches 08/17 and 09/17 then clean up register definitions, patch 10/17
swaps the arguments to rkisp1_write(), and patch 11/17 simplifies access
to the resizer registers.

Patches 12/17 to 16/17 move on to improving debugfs support, with code
first moved to a separate file (12/17) that can be conditionally
compiled (13/17), support for collecting statistics on the input
interface (14/17, very useful to check if the ISP actually receives
data) and for dumping core and ISP registers (15/17). Patch 16/17
completes that rework by moving the resizer register dumps support to
debugfs too.

Finally, patch 17/17 simplifies the V4L2 querycap implementation on
video nodes.

More fixes and improvements should follow, so I'd like to merge sooner
than latter if possible, to avoid having to rebase large series.

Laurent Pinchart (16):
media: rkisp1: capture: Initialize entity before video device
media: rkisp1: capture: Fix and simplify (un)registration
media: rkisp1: isp: Fix and simplify (un)registration
media: rkisp1: resizer: Fix and simplify (un)registration
media: rkisp1: params: Fix and simplify (un)registration
media: rkisp1: stats: Simplify (un)registration
media: rkisp1: Simplify rkisp1_entities_register() error path
media: rkisp1: regs: Don't use BIT() macro for multi-bit register
fields
media: rkisp1: regs: Rename CCL, ICCL and IRCL registers with VI_
prefix
media: rkisp1: Swap value and address arguments to rkisp1_write()
media: rkisp1: resizer: Simplify register access
media: rkisp1: Move debugfs code to a separate file
media: rkisp1: Compile debugfs support conditionally
media: rkisp1: debug: Collect input status by sampling ISP_FLAGS_SHD
media: rkisp1: debug: Add debugfs files to dump core and ISP registers
media: rkisp1: debug: Move resizer register dump to debugfs

Paul Elder (1):
media: rkisp1: capture: Bypass the main device for handling querycap

.../media/platform/rockchip/rkisp1/Makefile | 18 +-
.../platform/rockchip/rkisp1/rkisp1-capture.c | 159 ++--
.../platform/rockchip/rkisp1/rkisp1-common.h | 18 +-
.../platform/rockchip/rkisp1/rkisp1-debug.c | 224 ++++++
.../platform/rockchip/rkisp1/rkisp1-dev.c | 73 +-
.../platform/rockchip/rkisp1/rkisp1-isp.c | 156 ++--
.../platform/rockchip/rkisp1/rkisp1-params.c | 706 +++++++++---------
.../platform/rockchip/rkisp1/rkisp1-regs.h | 188 +++--
.../platform/rockchip/rkisp1/rkisp1-resizer.c | 204 ++---
.../platform/rockchip/rkisp1/rkisp1-stats.c | 13 +-
10 files changed, 934 insertions(+), 825 deletions(-)
create mode 100644 drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c

base-commit: 71e6d0608e4d1b79069990c7dacb3600ced28a3b