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
next 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