lkml.org 
[lkml]   [2022]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH v4 00/45] Allwinner A31/A83T MIPI CSI-2 and A31 ISP / CSI Rework
    Date
    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 v3:
    - Updated Kconfig to follow the latest media-wide changes;
    - Rebased on latest changes to the driver (JPEG/sRGB colorspaces);
    - Added helper to get a single enabled link for an entity's pad, to replace
    source selection at link_validate time and select the remote source at
    stream on time instead;
    - Kept clock-managed regmap mmio;
    - Added collected review tags;
    - Various cosmetic cleanups;

    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 (45):
    media: sun6i-csi: Define and use driver name and (reworked)
    description
    media: sun6i-csi: Refactor main driver data structures
    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: media-entity: Add helper to get a single enabled link
    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: 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 +-
    drivers/media/mc/mc-entity.c | 26 +
    .../media/platform/sunxi/sun6i-csi/Kconfig | 12 +-
    .../media/platform/sunxi/sun6i-csi/Makefile | 2 +-
    .../platform/sunxi/sun6i-csi/sun6i_csi.c | 1077 +++++-----------
    .../platform/sunxi/sun6i-csi/sun6i_csi.h | 153 +--
    .../sunxi/sun6i-csi/sun6i_csi_bridge.c | 869 +++++++++++++
    .../sunxi/sun6i-csi/sun6i_csi_bridge.h | 69 +
    .../sunxi/sun6i-csi/sun6i_csi_capture.c | 1109 +++++++++++++++++
    .../sunxi/sun6i-csi/sun6i_csi_capture.h | 89 ++
    .../platform/sunxi/sun6i-csi/sun6i_csi_reg.h | 362 +++---
    .../platform/sunxi/sun6i-csi/sun6i_video.c | 685 ----------
    .../platform/sunxi/sun6i-csi/sun6i_video.h | 38 -
    include/media/media-entity.h | 13 +
    14 files changed, 2707 insertions(+), 1814 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.2

    \
     
     \ /
      Last update: 2022-04-15 17:32    [W:4.158 / U:0.904 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site