From: Dave Stevenson <dave.stevenson@raspberrypi.com>
To: Maxime Ripard <mripard@kernel.org>,
Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
dri-devel@lists.freedesktop.org
Cc: Dave Stevenson <dave.stevenson@raspberrypi.com>
Subject: [PATCH v2 06/31] drm/vc4: hvs: Set AXI panic modes for the HVS
Date: Fri, 21 Jun 2024 16:20:30 +0100 [thread overview]
Message-ID: <20240621152055.4180873-7-dave.stevenson@raspberrypi.com> (raw)
In-Reply-To: <20240621152055.4180873-1-dave.stevenson@raspberrypi.com>
The HVS can change AXI request mode based on how full the COB
FIFOs are.
Until now the vc4 driver has been relying on the firmware to
have set these to sensible values.
With HVS channel 2 now being used for live video, change the
panic mode for all channels to be explicitly set by the driver,
and the same for all channels.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
---
drivers/gpu/drm/vc4/vc4_hvs.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/drivers/gpu/drm/vc4/vc4_hvs.c b/drivers/gpu/drm/vc4/vc4_hvs.c
index 04af672caacb..267c9fde7362 100644
--- a/drivers/gpu/drm/vc4/vc4_hvs.c
+++ b/drivers/gpu/drm/vc4/vc4_hvs.c
@@ -951,6 +951,17 @@ static int vc4_hvs_bind(struct device *dev, struct device *master, void *data)
SCALER_DISPCTRL_SCLEIRQ);
+ /* Set AXI panic mode.
+ * VC4 panics when < 2 lines in FIFO.
+ * VC5 panics when less than 1 line in the FIFO.
+ */
+ dispctrl &= ~(SCALER_DISPCTRL_PANIC0_MASK |
+ SCALER_DISPCTRL_PANIC1_MASK |
+ SCALER_DISPCTRL_PANIC2_MASK);
+ dispctrl |= VC4_SET_FIELD(2, SCALER_DISPCTRL_PANIC0);
+ dispctrl |= VC4_SET_FIELD(2, SCALER_DISPCTRL_PANIC1);
+ dispctrl |= VC4_SET_FIELD(2, SCALER_DISPCTRL_PANIC2);
+
/* Set AXI panic mode.
* VC4 panics when < 2 lines in FIFO.
* VC5 panics when less than 1 line in the FIFO.
--
2.34.1
next prev parent reply other threads:[~2024-06-21 15:21 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-21 15:20 [PATCH v2 00/31] Preparatory patches for BCM2712 (Pi5) support Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 01/31] drm/vc4: plane: Keep fractional source coords inside state Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 02/31] drm/vc4: plane: Handle fractional coordinates using the phase field Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 03/31] drm/vc4: crtc: Force trigger of dlist update on margins change Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 04/31] drm/vc4: hdmi: Avoid log spam for audio start failure Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 05/31] drm/vc4: plane: Add support for YUV444 formats Dave Stevenson
2024-06-21 15:20 ` Dave Stevenson [this message]
2024-06-21 15:20 ` [PATCH v2 07/31] drm/vc4: hdmi: Increase audio MAI fifo dreq threshold Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 08/31] drm/vc4: hdmi: Warn if writing to an unknown HDMI register Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 09/31] drm/vc4: hvs: More logging for dlist generation Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 10/31] drm/vc4: hvs: Print error if we fail an allocation Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 11/31] drm/vc4: plane: Add more debugging for LBM allocation Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 12/31] drm/vc4: plane: Use return variable in atomic_check Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 13/31] drm/vc4: crtc: Move assigned_channel to a variable Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 14/31] drm/vc4: hvs: Don't write gamma luts on 2711 Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 15/31] drm/vc4: plane: YUV planes require vertical scaling to always be enabled Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 16/31] drm/vc4: hdmi: Avoid hang with debug registers when suspended Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 17/31] drm/vc4: hvs: Fix dlist debug not resetting the next entry pointer Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 18/31] drm/vc4: hvs: Remove incorrect limit from hvs_dlist debugfs function Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 19/31] drm/vc4: hvs: Remove ABORT_ON_EMPTY flag Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 20/31] drm/vc4: Introduce generation number enum Dave Stevenson
2024-10-07 11:59 ` [v2,20/31] " Marek Szyprowski
2024-10-07 18:13 ` Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 21/31] drm/vc4: Make v3d paths unavailable on any generation newer than vc4 Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 22/31] drm/vc4: hvs: Use switch statement to simplify vc4_hvs_get_fifo_from_output Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 23/31] drm/vc4: hvs: Create hw_init function Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 24/31] drm/vc4: hvs: Create cob_init function Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 25/31] drm/vc4: hvs: Rename hvs_regs list Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 26/31] drm/vc4: plane: Change ptr0_offset to an array Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 27/31] drm/vc4: hvs: Rework LBM alignment Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 28/31] drm/vc4: hvs: Change prototype of __vc4_hvs_alloc to pass registers Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 29/31] drm/vc4: plane: Move the buffer offset out of the vc4_plane_state Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 30/31] drm/vc4: hvs: Enable SCALER_CONTROL early in HVS init Dave Stevenson
2024-06-21 15:20 ` [PATCH v2 31/31] drm/vc4: hvs: Correct logic on stopping an HVS channel Dave Stevenson
2024-06-26 13:33 ` [PATCH v2 00/31] Preparatory patches for BCM2712 (Pi5) support Maxime Ripard
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=20240621152055.4180873-7-dave.stevenson@raspberrypi.com \
--to=dave.stevenson@raspberrypi.com \
--cc=airlied@gmail.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=kernel-list@raspberrypi.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=tzimmermann@suse.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.