linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/46] Allwinner A31/A83T MIPI CSI-2 and A31 ISP / CSI Rework
@ 2022-03-11 14:34 Paul Kocialkowski
  2022-03-11 14:34 ` [PATCH v3 01/46] media: sun6i-csi: Define and use driver name and (reworked) description Paul Kocialkowski
                   ` (45 more replies)
  0 siblings, 46 replies; 55+ messages in thread
From: Paul Kocialkowski @ 2022-03-11 14:34 UTC (permalink / raw)
  To: linux-kernel, linux-media, linux-arm-kernel, linux-sunxi
  Cc: Yong Deng, Paul Kocialkowski, Mauro Carvalho Chehab,
	Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Laurent Pinchart,
	Maxime Ripard, Thomas Petazzoni

This new version is an offspring from the big "Allwinner A31/A83T
MIPI CSI-2 Support and A31 ISP Support" series, which was split into
individual series for better clarity and handling.

This part only concerns the rework of the CSI driver to support the MIPI CSI-2
and ISP workflows.

Changes since all-in-one v2:
- Reworked capture video device registration, which stays in the main path.
- Reworked async subdev handling with a dedicated structure holding the
  corresponding source to avoid matching in the driver;
- Added mutex for mbus format serialization;
- Remove useless else in link_validate;
- Reworked commit logs to include missing information;
- Cleaned up Kconfig, added PM dependency;
- Moved platform-specific clock rate to of match data;
- Added collected Reviewed-by tags;
- Updated copyright years;

Paul Kocialkowski (46):
  media: sun6i-csi: Define and use driver name and (reworked)
    description
  media: sun6i-csi: Refactor main driver data structures
  media: sun6i-csi: Grab bus clock instead of passing it to regmap
  media: sun6i-csi: Tidy up platform code
  media: sun6i-csi: Always set exclusive module clock rate
  media: sun6i-csi: Define and use variant to get module clock rate
  media: sun6i-csi: Use runtime pm for clocks and reset
  media: sun6i-csi: Tidy up Kconfig
  media: sun6i-csi: Tidy up v4l2 code
  media: sun6i-csi: Tidy up video code
  media: sun6i-csi: Pass and store csi device directly in video code
  media: sun6i-csi: Register the media device after creation
  media: sun6i-csi: Add media ops with link notify callback
  media: sun6i-csi: Introduce and use video helper functions
  media: sun6i-csi: Move csi buffer definition to main header file
  media: sun6i-csi: Add bridge v4l2 subdev with port management
  media: sun6i-csi: Rename sun6i_video to sun6i_csi_capture
  media: sun6i-csi: Add capture state using vsync for page flip
  media: sun6i-csi: Rework register definitions, invert misleading
    fields
  media: sun6i-csi: Add dimensions and format helpers to capture
  media: sun6i-csi: Implement address configuration without indirection
  media: sun6i-csi: Split stream sequences and irq code in capture
  media: sun6i-csi: Move power management to runtime pm in capture
  media: sun6i-csi: Move register configuration to capture
  media: sun6i-csi: Rework capture format management with helper
  media: sun6i-csi: Remove custom format helper and rework configure
  media: sun6i-csi: Add bridge dimensions and format helpers
  media: sun6i-csi: Get mbus code from bridge instead of storing it
  media: sun6i-csi: Tidy capture configure code
  media: sun6i-csi: Introduce bridge format structure, list and helper
  media: sun6i-csi: Introduce capture format structure, list and helper
  media: sun6i-csi: Configure registers from format tables
  media: sun6i-csi: Introduce format match structure, list and helper
  media: sun6i-csi: Implement capture link validation with logic
  media: sun6i-csi: Get bridge subdev directly in capture stream ops
  media: sun6i-csi: Move hardware control to the bridge
  media: sun6i-csi: Unset bridge source on capture streamon fail
  media: sun6i-csi: Rename the capture video device to sun6i-csi-capture
  media: sun6i-csi: Cleanup headers and includes, update copyright lines
  media: sun6i-csi: Add support for MIPI CSI-2 to the bridge code
  media: sun6i-csi: Only configure capture when streaming
  media: sun6i-csi: Add extra checks to the interrupt routine
  media: sun6i-csi: Request a shared interrupt
  media: sun6i-csi: Detect the availability of the ISP
  media: sun6i-csi: Add support for hooking to the isp devices
  MAINTAINERS: Add myself as sun6i-csi maintainer and rename/move entry

 MAINTAINERS                                   |   17 +-
 .../media/platform/sunxi/sun6i-csi/Kconfig    |    9 +-
 .../media/platform/sunxi/sun6i-csi/Makefile   |    2 +-
 .../platform/sunxi/sun6i-csi/sun6i_csi.c      | 1086 +++++-----------
 .../platform/sunxi/sun6i-csi/sun6i_csi.h      |  154 +--
 .../sunxi/sun6i-csi/sun6i_csi_bridge.c        |  883 +++++++++++++
 .../sunxi/sun6i-csi/sun6i_csi_bridge.h        |   70 ++
 .../sunxi/sun6i-csi/sun6i_csi_capture.c       | 1102 +++++++++++++++++
 .../sunxi/sun6i-csi/sun6i_csi_capture.h       |   89 ++
 .../platform/sunxi/sun6i-csi/sun6i_csi_reg.h  |  362 +++---
 .../platform/sunxi/sun6i-csi/sun6i_video.c    |  681 ----------
 .../platform/sunxi/sun6i-csi/sun6i_video.h    |   38 -
 12 files changed, 2688 insertions(+), 1805 deletions(-)
 create mode 100644 drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_bridge.c
 create mode 100644 drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_bridge.h
 create mode 100644 drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.c
 create mode 100644 drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.h
 delete mode 100644 drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
 delete mode 100644 drivers/media/platform/sunxi/sun6i-csi/sun6i_video.h

-- 
2.35.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 55+ messages in thread

end of thread, other threads:[~2022-03-18 16:17 UTC | newest]

Thread overview: 55+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-11 14:34 [PATCH v3 00/46] Allwinner A31/A83T MIPI CSI-2 and A31 ISP / CSI Rework Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 01/46] media: sun6i-csi: Define and use driver name and (reworked) description Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 02/46] media: sun6i-csi: Refactor main driver data structures Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 03/46] media: sun6i-csi: Grab bus clock instead of passing it to regmap Paul Kocialkowski
2022-03-15 19:22   ` Jernej Škrabec
2022-03-18  8:49     ` Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 04/46] media: sun6i-csi: Tidy up platform code Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 05/46] media: sun6i-csi: Always set exclusive module clock rate Paul Kocialkowski
2022-03-15 19:27   ` Jernej Škrabec
2022-03-11 14:34 ` [PATCH v3 06/46] media: sun6i-csi: Define and use variant to get " Paul Kocialkowski
2022-03-15 19:31   ` Jernej Škrabec
2022-03-18  8:54     ` Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 07/46] media: sun6i-csi: Use runtime pm for clocks and reset Paul Kocialkowski
2022-03-15 19:46   ` Jernej Škrabec
2022-03-18 16:15     ` Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 08/46] media: sun6i-csi: Tidy up Kconfig Paul Kocialkowski
2022-03-15 19:51   ` Jernej Škrabec
2022-03-11 14:34 ` [PATCH v3 09/46] media: sun6i-csi: Tidy up v4l2 code Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 10/46] media: sun6i-csi: Tidy up video code Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 11/46] media: sun6i-csi: Pass and store csi device directly in " Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 12/46] media: sun6i-csi: Register the media device after creation Paul Kocialkowski
2022-03-11 14:34 ` [PATCH v3 13/46] media: sun6i-csi: Add media ops with link notify callback Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 14/46] media: sun6i-csi: Introduce and use video helper functions Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 15/46] media: sun6i-csi: Move csi buffer definition to main header file Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 16/46] media: sun6i-csi: Add bridge v4l2 subdev with port management Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 17/46] media: sun6i-csi: Rename sun6i_video to sun6i_csi_capture Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 18/46] media: sun6i-csi: Add capture state using vsync for page flip Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 19/46] media: sun6i-csi: Rework register definitions, invert misleading fields Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 20/46] media: sun6i-csi: Add dimensions and format helpers to capture Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 21/46] media: sun6i-csi: Implement address configuration without indirection Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 22/46] media: sun6i-csi: Split stream sequences and irq code in capture Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 23/46] media: sun6i-csi: Move power management to runtime pm " Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 24/46] media: sun6i-csi: Move register configuration to capture Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 25/46] media: sun6i-csi: Rework capture format management with helper Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 26/46] media: sun6i-csi: Remove custom format helper and rework configure Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 27/46] media: sun6i-csi: Add bridge dimensions and format helpers Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 28/46] media: sun6i-csi: Get mbus code from bridge instead of storing it Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 29/46] media: sun6i-csi: Tidy capture configure code Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 30/46] media: sun6i-csi: Introduce bridge format structure, list and helper Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 31/46] media: sun6i-csi: Introduce capture " Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 32/46] media: sun6i-csi: Configure registers from format tables Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 33/46] media: sun6i-csi: Introduce format match structure, list and helper Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 34/46] media: sun6i-csi: Implement capture link validation with logic Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 35/46] media: sun6i-csi: Get bridge subdev directly in capture stream ops Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 36/46] media: sun6i-csi: Move hardware control to the bridge Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 37/46] media: sun6i-csi: Unset bridge source on capture streamon fail Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 38/46] media: sun6i-csi: Rename the capture video device to sun6i-csi-capture Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 39/46] media: sun6i-csi: Cleanup headers and includes, update copyright lines Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 40/46] media: sun6i-csi: Add support for MIPI CSI-2 to the bridge code Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 41/46] media: sun6i-csi: Only configure capture when streaming Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 42/46] media: sun6i-csi: Add extra checks to the interrupt routine Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 43/46] media: sun6i-csi: Request a shared interrupt Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 44/46] media: sun6i-csi: Detect the availability of the ISP Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 45/46] media: sun6i-csi: Add support for hooking to the isp devices Paul Kocialkowski
2022-03-11 14:35 ` [PATCH v3 46/46] MAINTAINERS: Add myself as sun6i-csi maintainer and rename/move entry Paul Kocialkowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).