From: Pavel Machek <pavel@denx.de>
To: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Cc: cip-dev@lists.cip-project.org,
Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>,
Biju Das <biju.das.jz@bp.renesas.com>,
tomm.merciai@gmail.com
Subject: Re: [PATCH 6.1.y-cip 40/55] media: rzg2l-cru: Add IRQ handler to OF data
Date: Fri, 22 Aug 2025 13:32:06 +0200 [thread overview]
Message-ID: <aKhVNiOn0BPPopjH@duo.ucw.cz> (raw)
In-Reply-To: <20250820160413.801341-41-tommaso.merciai.xr@bp.renesas.com>
[-- Attachment #1: Type: text/plain, Size: 1529 bytes --]
Hi!
> From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
>
> commit 2d9e3eb740b7d256d0ee53a6a242f0ffc60b0c9b upstream.
>
> Add `irq_handler` to the `rzg2l_cru_info` structure and pass it as part of
> the OF data. This prepares for supporting RZ/G3E and RZ/V2H(P) SoCs, which
> require a different IRQ handler. Update the IRQ request code to use the
> handler from the OF data.
>
> Add `enable_interrupts` and `disable_interrupts` function pointers to the
> `rzg2l_cru_info` structure and pass them as part of the OF data. This
> prepares for supporting RZ/G3E and RZ/V2H(P) SoCs, which require different
> interrupt configurations.
Refactoring is okay, but this also changes constants. Please change it
is okay.
Best regards,
Pavel
> +++ b/drivers/media/platform/renesas/rzg2l-cru/rzg2l-video.c
> @@ -300,8 +300,7 @@ void rzg2l_cru_stop_image_processing(struct rzg2l_cru_dev *cru)
> spin_lock_irqsave(&cru->qlock, flags);
>
> /* Disable and clear the interrupt */
> - rzg2l_cru_write(cru, CRUnIE, 0);
> - rzg2l_cru_write(cru, CRUnINTS, 0x001F0F0F);
> + cru->info->disable_interrupts(cru);
>
...
> +void rzg2l_cru_disable_interrupts(struct rzg2l_cru_dev *cru)
> +{
> + rzg2l_cru_write(cru, CRUnIE, 0);
> + rzg2l_cru_write(cru, CRUnINTS, 0x001f000f);
> +}
> +
> int rzg2l_cru_start_image_processing(struct rzg2l_cru_dev *cru)
--
In cooperation with DENX Software Engineering GmbH, HRB 165235 Munich,
Office: Kirchenstr.5, D-82194 Groebenzell, Germany
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
next prev parent reply other threads:[~2025-08-22 11:32 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-20 16:03 [PATCH 6.1.y-cip 00/55] Add support for CRU/CSI2 on Renesas RZ/G3E Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 01/55] media: dt-bindings: renesas,rzg2l-csi2: Document Renesas RZ/V2H(P) SoC Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 02/55] media: dt-bindings: renesas,rzg2l-csi2: Document Renesas RZ/G3E CSI-2 block Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 03/55] media: dt-bindings: renesas,rzg2l-cru: Document Renesas RZ/G3E SoC Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 04/55] media: platform: rzg2l-cru: rzg2l-video: Move request_irq() to probe() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 05/55] media: platform: rzg2l-cru: rzg2l-video: Set AXI burst max length Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 06/55] media: rzg2l-cru: Use RZG2L_CRU_IP_SINK/SOURCE enum entries Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 07/55] media: rzg2l-cru: Mark sink and source pad with MUST_CONNECT flag Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 08/55] media: rzg2l-cru: csi2: " Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 09/55] media: rzg2l-cru: csi2: Use ARRAY_SIZE() in media_entity_pads_init() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 10/55] media: rzg2l-cru: csi2: Implement .get_frame_desc() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 11/55] media: rzg2l-cru: Retrieve virtual channel information Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 12/55] media: rzg2l-cru: Remove `channel` member from `struct rzg2l_cru_csi` Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 13/55] media: rzg2l-cru: Use MIPI CSI-2 data types for ICnMC_INF definitions Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 14/55] media: rzg2l-cru: Remove unused fields from rzg2l_cru_ip_format struct Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 15/55] media: rzg2l-cru: Remove unnecessary WARN_ON check in format func Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 16/55] media: rzg2l-cru: Simplify configuring input format for image processing Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 17/55] media: rzg2l-cru: Inline calculating image size Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 18/55] media: rzg2l-cru: Simplify handling of supported formats Tommaso Merciai
2025-08-22 11:29 ` Pavel Machek
2025-08-20 16:03 ` [PATCH 6.1.y-cip 19/55] media: rzg2l-cru: Inline calculating bytesperline Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 20/55] media: rzg2l-cru: Make use of v4l2_format_info() helpers Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 21/55] media: rzg2l-cru: Use `rzg2l_cru_ip_formats` array in enum_frame_size Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 22/55] media: rzg2l-cru: csi2: Remove unused field from rzg2l_csi2_format Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 23/55] media: rzg2l-cru: video: Implement .link_validate() callback Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 24/55] media: rzg2l-cru: csi2: Use rzg2l_csi2_formats array in enum_frame_size Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 25/55] media: rzg2l-cru: Refactor ICnDMR register configuration Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 26/55] media: rzg2l-cru: Add support to capture 8bit raw sRGB Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 27/55] media: rzg2l-cru: Move register definitions to a separate file Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 28/55] media: renesas: rzg2l-cru: Add 'yuv' flag to IP format structure Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 29/55] media: platform: rzg2l-cru: rzg2l-video: Fix the comment in rzg2l_cru_start_streaming_vq() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 30/55] media: rzg2l-cru: csi2: Use local variable for struct device in rzg2l_csi2_probe() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 31/55] media: rzg2l-cru: csi2: Use devm_pm_runtime_enable() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 32/55] media: rzg2l-cru: rzg2l-core: Use local variable for struct device in rzg2l_cru_probe() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 33/55] media: rzg2l-cru: rzg2l-core: Use devm_pm_runtime_enable() Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 34/55] media: rzg2l-cru: csi2: Introduce SoC-specific D-PHY handling Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 35/55] media: rzg2l-cru: csi2: Skip system clock for RZ/V2H(P) SoC Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 36/55] media: rzg2l-cru: csi2: Add support " Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 37/55] media: rzg2l-cru: Add register mapping support Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 38/55] media: rzg2l-cru: Pass resolution limits via OF data Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 39/55] media: rzg2l-cru: Add image_conv offset to " Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 40/55] media: rzg2l-cru: Add IRQ handler " Tommaso Merciai
2025-08-22 11:32 ` Pavel Machek [this message]
2025-08-20 16:03 ` [PATCH 6.1.y-cip 41/55] media: rzg2l-cru: Add function pointer to check if FIFO is empty Tommaso Merciai
2025-08-22 11:33 ` Pavel Machek
2025-08-20 16:03 ` [PATCH 6.1.y-cip 42/55] media: rzg2l-cru: Add function pointer to configure CSI Tommaso Merciai
2025-08-20 16:03 ` [PATCH 6.1.y-cip 43/55] media: rzg2l-cru: Add support for RZ/G3E SoC Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 44/55] media: rzg2l-cru: Add vidioc_enum_framesizes() Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 45/55] arm64: dts: renesas: r9a09g047: Add CRU, CSI2 nodes Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 46/55] arm64: dts: renesas: r9a09g047e57-smarc: Add I2C0 pincontrol Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 47/55] arm64: dts: renesas: renesas-smarc2: Enable I2C0 node Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 48/55] arm64: dts: renesas: r9a09g047e57-smarc: Enable CRU, CSI support Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 49/55] media: v4l2-subdev: Refactor events Tommaso Merciai
2025-08-22 15:36 ` Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 50/55] media: i2c: ov5645: Refactor ov5645_set_power_off() Tommaso Merciai
2025-08-22 11:35 ` Pavel Machek
2025-08-20 16:04 ` [PATCH 6.1.y-cip 51/55] media: i2c: ov5645: Use local `dev` pointer for subdev device assignment Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 52/55] media: i2c: ov5645: Replace dev_err with dev_err_probe in probe function Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 53/55] media: i2c: ov5645: Use v4l2_async_register_subdev_sensor() Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 54/55] media: i2c: ov5645: Drop `power_lock` mutex Tommaso Merciai
2025-08-20 16:04 ` [PATCH 6.1.y-cip 55/55] media: i2c: ov5645: Set V4L2_SUBDEV_FL_HAS_EVENTS flag Tommaso Merciai
2025-08-22 11:36 ` Pavel Machek
2025-08-25 6:50 ` Tommaso Merciai
2025-08-26 7:38 ` Pavel Machek
2025-08-22 11:37 ` [PATCH 6.1.y-cip 00/55] Add support for CRU/CSI2 on Renesas RZ/G3E Pavel Machek
2025-08-22 15:08 ` Tommaso Merciai
2025-09-04 19:35 ` Pavel Machek
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=aKhVNiOn0BPPopjH@duo.ucw.cz \
--to=pavel@denx.de \
--cc=biju.das.jz@bp.renesas.com \
--cc=cip-dev@lists.cip-project.org \
--cc=nobuhiro1.iwamatsu@toshiba.co.jp \
--cc=tomm.merciai@gmail.com \
--cc=tommaso.merciai.xr@bp.renesas.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