public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Hans de Goede <hdegoede@redhat.com>
To: Sakari Ailus <sakari.ailus@linux.intel.com>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Daniel Scally <dan.scally@ideasonboard.com>
Cc: Hans de Goede <hdegoede@redhat.com>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Andy Shevchenko <andy@kernel.org>, Kate Hsuan <hpa@redhat.com>,
	Hao Yao <hao.yao@intel.com>, Bingbu Cao <bingbu.cao@intel.com>,
	linux-media@vger.kernel.org
Subject: [PATCH 00/12] media: intel-cio2-bridge: Add shared intel-cio2-bridge code, rework VCM instantiation
Date: Tue, 27 Jun 2023 19:56:30 +0200	[thread overview]
Message-ID: <20230627175643.114778-1-hdegoede@redhat.com> (raw)

Hi All,

While working on adding (proper) VCM support to the atomisp code
I found myself copying yet more code from
drivers/media/pci/intel/ipu3/cio2-bridge.c into the atomisp code.

So I decided that it really was time to factor out the common code
(most of the code) from intel/ipu3/cio2-bridge.c into its own
helper library and then share it between the atomisp and IPU3 code.

This will hopefully also be useful for the ongoing work to upstream
IPU6 input system support which also needs this functionality and
currently contains a 3th copy of this code in the out of tree driver.

This set consists of the following parts:

Patch 1     A bugfix for a recent change to the cio2-bridge code
Patches 2-8 Cleanup / preparation patches
Patch 9     Move the main body of the cio2-bridge.c code into
            a new shared intel-cio2-bridge module
Patch 10    Drop cio2-bridge code copy from atomisp, switching to
            the shared intel-cio2-bridge module
Patch 11    Rework how VCM client instantiation is done so that
            a device-link can be added from VCM to sensor to
            fix issues with the VCM power-state being tied to
            the sensor power state
Patch 12    Example patch to show how patch 11 avoids the need
            for hacks in VCM drivers caused by the shared power state
            (not intended for merging)

Regards,

Hans


Hans de Goede (12):
  media: ipu3-cio2: Do not use on stack memory for software_node.name
    field
  media: ipu3-cio2: Move initialization of node_names.vcm to
    cio2_bridge_init_swnode_names()
  media: ipu3-cio2: Make cio2_bridge_init() take a regular struct device
    as argument
  media: ipu3-cio2: Store dev pointer in struct cio2_bridge
  media: ipu3-cio2: Only keep PLD around while parsing
  media: ipu3-cio2: Add a cio2_bridge_parse_sensor_fwnode() helper
    function
  media: ipu3-cio2: Add a parse_sensor_fwnode callback to
    cio2_bridge_init()
  media: ipu3-cio2: Add supported_sensors parameter to
    cio2_bridge_init()
  media: ipu3-cio2: Move cio2_bridge_init() code into a new shared
    intel-cio2-bridge.ko
  media: atomisp: csi2-bridge: Switch to new common cio2_bridge_init()
  media: intel-cio2-bridge: Add a runtime-pm device-link between VCM and
    sensor
  [RFC] media: dw9719: Drop hack to enable "vsio" regulator

 MAINTAINERS                                   |   9 +
 drivers/media/common/Kconfig                  |   4 +
 drivers/media/common/Makefile                 |   1 +
 drivers/media/common/intel-cio2-bridge.c      | 464 ++++++++++++++++++
 drivers/media/i2c/dw9719.c                    |  27 +-
 drivers/media/pci/intel/ipu3/Kconfig          |   1 +
 drivers/media/pci/intel/ipu3/cio2-bridge.c    | 464 +++---------------
 drivers/media/pci/intel/ipu3/cio2-bridge.h    | 146 ------
 drivers/media/pci/intel/ipu3/ipu3-cio2-main.c |   7 +-
 drivers/media/pci/intel/ipu3/ipu3-cio2.h      |   7 +-
 drivers/staging/media/atomisp/Kconfig         |   2 +
 .../staging/media/atomisp/pci/atomisp_csi2.h  |  67 ---
 .../media/atomisp/pci/atomisp_csi2_bridge.c   | 307 ++----------
 include/media/intel-cio2-bridge.h             | 105 ++++
 14 files changed, 723 insertions(+), 888 deletions(-)
 create mode 100644 drivers/media/common/intel-cio2-bridge.c
 delete mode 100644 drivers/media/pci/intel/ipu3/cio2-bridge.h
 create mode 100644 include/media/intel-cio2-bridge.h

-- 
2.41.0


             reply	other threads:[~2023-06-27 17:57 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-27 17:56 Hans de Goede [this message]
2023-06-27 17:56 ` [PATCH 01/12] media: ipu3-cio2: Do not use on stack memory for software_node.name field Hans de Goede
2023-06-27 17:56 ` [PATCH 02/12] media: ipu3-cio2: Move initialization of node_names.vcm to cio2_bridge_init_swnode_names() Hans de Goede
2023-06-27 17:56 ` [PATCH 03/12] media: ipu3-cio2: Make cio2_bridge_init() take a regular struct device as argument Hans de Goede
2023-06-27 17:56 ` [PATCH 04/12] media: ipu3-cio2: Store dev pointer in struct cio2_bridge Hans de Goede
2023-06-27 17:56 ` [PATCH 05/12] media: ipu3-cio2: Only keep PLD around while parsing Hans de Goede
2023-06-27 17:56 ` [PATCH 06/12] media: ipu3-cio2: Add a cio2_bridge_parse_sensor_fwnode() helper function Hans de Goede
2023-06-27 20:39   ` Andy Shevchenko
2023-06-27 17:56 ` [PATCH 07/12] media: ipu3-cio2: Add a parse_sensor_fwnode callback to cio2_bridge_init() Hans de Goede
2023-06-27 17:56 ` [PATCH 08/12] media: ipu3-cio2: Add supported_sensors parameter " Hans de Goede
2023-06-27 17:56 ` [PATCH 09/12] media: ipu3-cio2: Move cio2_bridge_init() code into a new shared intel-cio2-bridge.ko Hans de Goede
2023-06-27 20:55   ` Andy Shevchenko
2023-06-28 12:53     ` Dan Scally
2023-06-27 17:56 ` [PATCH 10/12] media: atomisp: csi2-bridge: Switch to new common cio2_bridge_init() Hans de Goede
2023-06-27 17:56 ` [PATCH 11/12] media: intel-cio2-bridge: Add a runtime-pm device-link between VCM and sensor Hans de Goede
2023-06-27 21:03   ` Andy Shevchenko
2023-10-30  8:30   ` Bingbu Cao
2023-10-30  8:55     ` Sakari Ailus
2023-10-30  8:58       ` Hans de Goede
2023-10-30  9:23         ` Sakari Ailus
2023-11-01  6:26           ` Cao, Bingbu
2023-11-01  7:12             ` Sakari Ailus
2023-11-01  7:38               ` Cao, Bingbu
2023-11-02 13:35                 ` Andy Shevchenko
2023-11-02 13:54                   ` Hans de Goede
2023-11-03  2:01                     ` Bingbu Cao
2023-06-27 17:56 ` [PATCH 12/12] [RFC] media: dw9719: Drop hack to enable "vsio" regulator Hans de Goede
2023-06-27 21:04 ` [PATCH 00/12] media: intel-cio2-bridge: Add shared intel-cio2-bridge code, rework VCM instantiation Andy Shevchenko
2023-06-28  1:19 ` Cao, Bingbu
2023-06-28 13:57   ` Hans de Goede
2023-06-29  8:22     ` Cao, Bingbu
2023-06-29 20:45       ` Hans de Goede
2023-06-30  9:07 ` Sakari Ailus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230627175643.114778-1-hdegoede@redhat.com \
    --to=hdegoede@redhat.com \
    --cc=andy@kernel.org \
    --cc=bingbu.cao@intel.com \
    --cc=dan.scally@ideasonboard.com \
    --cc=hao.yao@intel.com \
    --cc=hpa@redhat.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=sakari.ailus@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox