Hi Gabriel
On Sat, 26 Apr 2025 at 07:23, Gabriel Dalimonte
wrote:
>
> `vc4_hdmi_audio_init` calls `devm_snd_dmaengine_pcm_register` which may
> return EPROBE_DEFER. Calling `drm_connector_hdmi_audio_init` adds a
> child device. The driver model docs[1] state that adding a child device
> prior to
RM bridge core, so convert the vc4_dsi_get/put() calls
> into drm_bridge_get/put() calls and get rid of the driver-specific
> refcounting implementation.
>
> Signed-off-by: Luca Ceresoli
Acked-by: Dave Stevenson
Thanks.
> ---
>
> Cc: "Maíra Canal"
> Cc: D
e import_attach optional.
>
> Signed-off-by: Thomas Zimmermann
> Cc: Maxime Ripard
> Cc: Dave Stevenson
> Cc: "Maíra Canal"
> Cc: Raspberry Pi Kernel Maintenance
Acked-by: Dave Stevenson
> ---
> drivers/gpu/drm/vc4/vc4_bo.c | 2 +-
> drivers/gpu/drm/vc4/vc4
Hi Dan
On Wed, 2 Apr 2025 at 12:00, Dan Carpenter wrote:
>
> Call rpi_firmware_put() on these two error paths before returning.
Ack that there is an issue here, but it seems easier to me to move the block
max_rate = rpi_firmware_clk_get_max_rate(firmware,
RP
;
> Fixes: 2fa4ef5fb943 ("drm/vc4: hvs: Create hw_init function")
> Signed-off-by: Dan Carpenter
Thanks for the respin
Reviewed-by: Dave Stevenson
> ---
> v2: Use a cleaner solution
>
> drivers/gpu/drm/vc4/vc4_hvs.c | 22 +++---
> 1 file chang
On Mon, 17 Mar 2025 at 17:13, David Turner wrote:
>
> This series enables jack detection for HDMI audio on vc4 devices. This
> means that userspace audio applications can detect when HDMI devices are
> connected or disconnected, for example to play/pause or switch to
> another audio device.
Than
t; -if (!res) {
> -...
> -}
> ...>
> -ioremap = devm_ioremap(...);
> +ioremap = devm_platform_ioremap_resource_byname(pdev,name);
>
> Cc: Maxime Ripard
> Cc: Dave Stevenson
> Cc: "Maíra Canal"
> Signed-off-by: Anusha Srivatsa
> ---
> drivers/gpu/drm/vc4/vc4
interrupt requirements for BCM2712.
(Requirements for BCM2711 should be unchanged).
[1] Commit 0b1dbe82e051 ("drm/vc4: hdmi: Add support for BCM2712 HDMI
controllers")
Fixes: 62948c62abca ("dt-bindings: display: Add BCM2712 HDMI bindings")
Signed-off-by: Dave Stevenson
---
...
d support for BCM2712 HVS")
Fixes: 6cfcbe548a3a ("dt-bindings: display: Add BCM2712 HVS bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2835-hvs.yaml | 88 ++
1 file changed, 74 insertions(+), 14 deletions(-)
diff --git a/Docume
interrupt-controller and interrupt-cells
to satisfy validation on this platform.
Signed-off-by: Dave Stevenson
Acked-by: Krzysztof Kozlowski
---
.../devicetree/bindings/interrupt-controller/brcm,bcm2836-l1-intc.yaml | 2 --
1 file changed, 2 deletions(-)
diff --git
a/Documentation/devicetre
ome other flag I need to set in the bindings,
but I can't work it out. We have similar errors for all the Pi
platforms for one or more nodes.
Please advise and I'll happily fix them all.
Thanks
Dave
[1]
https://lore.kernel.org/linux-arm-kernel/20241025-drm-vc4-2712-support-v2-0-35ef
On Fri, 20 Dec 2024 at 00:45, Dmitry Baryshkov
wrote:
>
> On Thu, Dec 19, 2024 at 04:16:37PM +, Dave Stevenson wrote:
> > On Wed, 18 Dec 2024 at 14:52, Dave Stevenson
> > wrote:
> > >
> > > Hi Maxime & Dmitry
> > >
> > > On Wed, 18 D
Hi Linus
On Fri, 20 Dec 2024 at 12:50, Linus Walleij wrote:
>
> On Thu, Dec 12, 2024 at 7:36 PM Dave Stevenson
> wrote:
>
> > gpio-line-names is a generic property that can be supported by any
> > GPIO controller, so permit it through the binding.
> >
> >
On Wed, 18 Dec 2024 at 14:52, Dave Stevenson
wrote:
>
> Hi Maxime & Dmitry
>
> On Wed, 18 Dec 2024 at 07:59, Maxime Ripard wrote:
> >
> > On Wed, Dec 18, 2024 at 07:24:23AM +0200, Dmitry Baryshkov wrote:
> > > On Tue, 17 Dec 2024 at 19:21, Maxime Ripard wrot
On Thu, 19 Dec 2024 at 12:14, Krzysztof Kozlowski wrote:
>
> On 19/12/2024 12:54, Dave Stevenson wrote:
> > Hi Krzysztof
> >
> > On Thu, 19 Dec 2024 at 08:42, Krzysztof Kozlowski wrote:
> >>
> >> On Wed, Dec 18, 2024 at 02:48:33PM +, Dave Steve
Hi Krzysztof
On Thu, 19 Dec 2024 at 08:42, Krzysztof Kozlowski wrote:
>
> On Wed, Dec 18, 2024 at 02:48:33PM +, Dave Stevenson wrote:
> > Commit 6cfcbe548a3a ("dt-bindings: display: Add BCM2712 HVS bindings")
> > added the compatible string for BCM2712, but misse
Hi Maxime & Dmitry
On Wed, 18 Dec 2024 at 07:59, Maxime Ripard wrote:
>
> On Wed, Dec 18, 2024 at 07:24:23AM +0200, Dmitry Baryshkov wrote:
> > On Tue, 17 Dec 2024 at 19:21, Maxime Ripard wrote:
> > > On Tue, Dec 17, 2024 at 02:40:22AM +0200, Dmitry Baryshkov wrote:
> > > > While porting lt9611
interrupt-controller and interrupt-cells
to satisfy validation on this platform.
Signed-off-by: Dave Stevenson
Acked-by: Krzysztof Kozlowski
---
.../devicetree/bindings/interrupt-controller/brcm,bcm2836-l1-intc.yaml | 2 --
1 file changed, 2 deletions(-)
diff --git
a/Documentation/devicetre
ts.
Fixes: 6cfcbe548a3a ("dt-bindings: display: Add BCM2712 HVS bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2835-hvs.yaml | 84 ++
1 file changed, 70 insertions(+), 14 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/b
2 HDMI bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2711-hdmi.yaml| 81 ++
1 file changed, 67 insertions(+), 14 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
b/Documentation/devicetree/b
ome other flag I need to set in the bindings,
but I can't work it out. We have similar errors for all the Pi
platforms for one or more nodes.
Please advise and I'll happily fix them all.
Thanks
Dave
[1]
https://lore.kernel.org/linux-arm-kernel/20241025-drm-vc4-2712-support-v2-0-3
The names of the hdmi0 and hdmi1 nodes had addresses that
didn't match the reg properties for the nodes.
Fixes: f66b382affd8 ("arm64: dts: broadcom: Add display pipeline support to
BCM2712")
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 4 ++--
1
The brcm,bcm2836-l1-intc controller isn't used on this platform.
It is used on 32-bit kernels for the smp_boot_secondary hook, but
BCM2712 can't run a 32-bit kernel.
Remove the node.
Fixes: e1417095a139 ("arm64: dts: broadcom: Add firmware clocks and power nodes
to Pi5 DT")
: dts: broadcom: Add display pipeline support to
BCM2712")
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
ay: Add BCM2712 HVS bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2835-hvs.yaml | 83 ++
1 file changed, 69 insertions(+), 14 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/brcm,bcm2835-hvs.yaml
b/Documentation
interrupt-controller and interrupt-cells
to satisfy validation on this platform.
Signed-off-by: Dave Stevenson
---
.../devicetree/bindings/interrupt-controller/brcm,bcm2836-l1-intc.yaml | 2 --
1 file changed, 2 deletions(-)
diff --git
a/Documentation/devicetree/bindings/interrupt-controller/brcm,
2 HDMI bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2711-hdmi.yaml| 107 ++---
1 file changed, 93 insertions(+), 14 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
b/Documentation/devicetree/b
: Dave Stevenson
---
Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml | 4
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml
b/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml
index f096f286da19..fbd69b4cecc7
ome other flag I need to set in the bindings,
but I can't work it out. We have similar errors for all the Pi
platforms for one or more nodes.
Please advise and I'll happily fix them all.
Thanks
Dave
[1]
https://lore.kernel.org/linux-arm-kernel/20241025-drm-vc4-2712-support-v2-0-35efa
interrupt-controller and interrupt-cells
to satisfy validation on this platform.
Signed-off-by: Dave Stevenson
---
.../devicetree/bindings/interrupt-controller/brcm,bcm2836-l1-intc.yaml | 2 --
1 file changed, 2 deletions(-)
diff --git
a/Documentation/devicetree/bindings/interrupt-controller/brcm,
The names of the hdmi0 and hdmi1 nodes had addresses that
didn't match the reg properties for the nodes.
Fixes: f66b382affd8 ("arm64: dts: broadcom: Add display pipeline support to
BCM2712")
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 4 ++--
1
The brcm,bcm2836-l1-intc controller isn't used on this platform.
It is used on 32-bit kernels for the smp_boot_secondary hook, but
BCM2712 can't run a 32-bit kernel.
Remove the node.
Fixes: e1417095a139 ("arm64: dts: broadcom: Add firmware clocks and power nodes
to Pi5 DT")
: dts: broadcom: Add display pipeline support to
BCM2712")
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
ay: Add BCM2712 HVS bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2835-hvs.yaml | 83 ++
1 file changed, 69 insertions(+), 14 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/brcm,bcm2835-hvs.yaml
b/Documentation
: Dave Stevenson
---
Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml | 4
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml
b/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml
index f096f286da19..fbd69b4cecc7
2 HDMI bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2711-hdmi.yaml| 107 ++---
1 file changed, 93 insertions(+), 14 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
b/Documentation/devicetree/b
ome other flag I need to set in the bindings,
but I can't work it out. We have similar errors for all the Pi
platforms for one or more nodes.
Please advise and I'll happily fix them all.
Thanks
Dave
[1]
https://lore.kernel.org/linux-arm-kernel/20241025-drm-vc4-2712-support-v2-0
On Thu, 12 Dec 2024 at 14:33, Dave Stevenson
wrote:
>
> On Thu, 12 Dec 2024 at 12:47, Dan Carpenter wrote:
> >
> > The default statement is never used in real life. However, if it were
> > used for some reason then call drm_dev_exit() before returning.
> >
> >
ot;)
> Signed-off-by: Dan Carpenter
Reviewed-by: Dave Stevenson
Thanks for the update.
Dave
> ---
> v2: style fixes
>
> drivers/gpu/drm/vc4/vc4_hvs.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/vc4/vc4_hvs.c b/drivers/gpu/drm
Hi Dan
Thanks for the patch.
On Thu, 12 Dec 2024 at 11:31, Dan Carpenter wrote:
>
> Presumably the default path is never used. However, if it were used for
> some reason then call drm_dev_exit() before returning.
Correct - the default path would mean something badly wrong.
Without it though, i
_jiffies(C)
>
> Signed-off-by: Easwar Hariharan
Reviewed-by: Dave Stevenson
> ---
> drivers/staging/vc04_services/bcm2835-audio/bcm2835-vchiq.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/vc04_services/bcm2835-audio/bcm283
Fixes up errors on HDMI and interrupt controllers that weren't
noticed before merging.
Fixes: de9bc2dba3db ("arm64: dts: broadcom: Add display pipeline support to
BCM2712")
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 8
1 file change
The previous patch just adding the compatible missed out that the
number of interrupts changed
Fixes: 62948c62abca ("dt-bindings: display: Add BCM2712 HDMI bindings")
Signed-off-by: Dave Stevenson
---
.../bindings/display/brcm,bcm2711-hdmi.yaml| 44 +++---
1 fi
Resolves the issues on clocks and power nodes
Fixes: 4254a647b6c9 ("arm64: dts: broadcom: Add firmware clocks and power nodes
to Pi5 DT")
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 9 +
1 file changed, 5 insertions(+), 4 deletion
The previous patch adding the compatible string missed out that
the number of interrupts and clocks changed with BCM2712 too.
Update to validate clock and interrupts for the variants.
Fixes: 6cfcbe548a3a ("dt-bindings: display: Add BCM2712 HVS bindings")
Signed-off-by: Dave
BCM2712 DT was producing dtbinding validation errors of
interrupt-controller@7cd0: 'interrupt-controller' is a required
property
interrupt-controller@7cd0: '#interrupt-cells' is a required property
Fix them by adding the required flags.
Signed-off-by: Dave Steven
Support comes from gpiolib, so permit it through the binding.
Signed-off-by: Dave Stevenson
---
Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml
b/Documentation
ome other flag I need to set in the bindings,
but I can't work it out. We have similar errors for all the Pi
platforms for one or more nodes.
Please advise and I'll happily fix them all.
Thanks
Dave
[1]
https://lore.kernel.org/linux-arm-kernel/20241025-drm-vc4-2712-support-v2-0-35efa
BCM2711 DT was producing dtbinding validation errors of
interrupt-controller@4000: 'interrupt-controller' is a required
property
interrupt-controller@4000: '#interrupt-cells' is a required property
Fix them by adding the required flags.
Signed-off-by: Dave Stevenson
On Sun, 24 Nov 2024 at 17:00, Florian Fainelli
wrote:
>
>
>
> On 11/22/2024 12:06 AM, Maxime Ripard wrote:
> > On Thu, Nov 21, 2024 at 03:37:00PM +0000, Dave Stevenson wrote:
> >> On Wed, 23 Oct 2024 at 17:50, Dave Stevenson
> >> wrote:
> >>>
>
On Wed, 23 Oct 2024 at 17:50, Dave Stevenson
wrote:
>
> This series adds the required DRM, clock, and DT changes
> required to support the display hardware on Pi5.
> There are a couple of minor fixes first before the main patches.
>
> Many of the patches were authored by Max
Hi Stefan
Sorry for missing this one.
On Fri, 8 Nov 2024 at 18:55, Stefan Wahren wrote:
>
> Am 26.10.24 um 15:11 schrieb Stefan Wahren:
> > Hi,
> > during the investigations of the recent VC4 HDMI Sink issue [1], I was
> > able to reproduce another issue with vc4 after s2idle resume.
> > Sometim
On Fri, 1 Nov 2024 at 00:25, Dmitry Baryshkov
wrote:
>
> Use new drm_hdmi_connector_mode_valid() helper instead of a
> module-specific copy.
>
> Reviewed-by: Chen-Yu Tsai
> Signed-off-by: Dmitry Baryshkov
Acked-by: Dave Stevenson
> ---
> drivers/gpu/drm/vc4/vc4_h
From: Maxime Ripard
The new writeback controllers that can be found on the BCM2712 require
to have their horizontal and vertical size reduced by one.
Let's tie that behaviour to the compatible so we can support both the
new and old controllers.
Signed-off-by: Maxime Ripard
Signed-off-by:
There are a few minor changes in the display list generation
for the D-step of the chip, so add them.
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/gpu/drm/vc4/vc4_plane.c | 72 ++---
drivers/gpu/drm/vc4/vc4_regs.h | 9 --
2
The registers have been moved around, and a couple of minor changes
made, so adapt for this.
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/gpu/drm/vc4/vc4_drv.h | 6 ++
drivers/gpu/drm/vc4/vc4_hvs.c | 154 +
drivers/gpu/drm/vc4
From: Maxime Ripard
The BCM2712 SoC comes with a new variation of the videocore display
pipeline. Let's create a new compatible for it.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
Acked-by: Rob Herring (Arm)
---
Documentation/devicetree/bindings/display/brcm,bcm2835-vc4
From: Maxime Ripard
The BCM2712 has a MOPLET controller which is basically a TXP without the
transpose feature.
Express that by adding a new compatible for it.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
Acked-by: Rob Herring (Arm)
---
Documentation/devicetree/bindings
put buffer.
Initialise it to enabled to avoid this.
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/gpu/drm/vc4/vc4_hvs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/vc4/vc4_hvs.c b/drivers/gpu/drm/vc4/vc4_hvs.c
index 2493ac17d78f..c8bc2b486
From: Maxime Ripard
The BCM2712 has an evolution of what used to be called TXP in the
earlier SoCs, but is now called MOP.
There's a few differences still, so we can add a new compatible to deal
with them easily.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gp
From: Dom Cobley
There isn't a reason not to minimise the clocks, and it saves
some power.
Signed-off-by: Dom Cobley
Signed-off-by: Dave Stevenson
---
drivers/clk/bcm/clk-raspberrypi.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/drivers/clk/bcm/clk-raspberrypi.c
b/driver
From: Dom Cobley
The ISP clock can be controlled by the driver, so register it
with the clock subsystem.
Signed-off-by: Dom Cobley
Signed-off-by: Dave Stevenson
---
drivers/clk/bcm/clk-raspberrypi.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/clk/bcm/clk-raspberrypi.c
b
BCM2712 still uses the firmware clocks and power drivers, so add
them to the base device tree.
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 28
1 file changed, 28 insertions(+)
diff --git a/arch/arm64/boot/dts/broadcom/bcm2712
ff-by: Dave Stevenson
---
drivers/clk/bcm/clk-raspberrypi.c | 18 ++
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/drivers/clk/bcm/clk-raspberrypi.c
b/drivers/clk/bcm/clk-raspberrypi.c
index 9f716b2223ae..b12d86720207 100644
--- a/drivers/clk/bcm/clk-raspberrypi.c
From: Maxime Ripard
The BCM2712 MOP and MOPLET can handle addresses larger than 32bits
through an extra register. We can easily support it and make it
conditional based on the compatible through a boolean in our variant
structure.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
Adds the HVS and associated hardware blocks to support the HDMI
and writeback connectors on BCM2712 / Pi5.
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 14 ++
arch/arm64/boot/dts/broadcom/bcm2712.dtsi| 188 +++
2 files changed
From: Maxime Ripard
We'll have multiple TXP instances in the BCM2712, so we can't use a
single encoder type anymore. Let's tie the encoder type to the
compatible.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_drv.h | 1 +
drivers/gpu/dr
The D-step has increased FIFO sizes of the MAI_THR blocks,
resulting in changes to the register masking. Add support for
it.
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/gpu/drm/vc4/vc4_hdmi.c | 19 +--
drivers/gpu/drm/vc4/vc4_regs.h | 9 +
2
-screen size of 0 pixels to avoid the incorrect rendering.
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/gpu/drm/vc4/vc4_plane.c | 20
1 file changed, 20 insertions(+)
diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
index
From: Maxime Ripard
Starting with BCM2712, we'll have a two TXP. Let's follow the HDMI
example and add two encoder types for TXP: TXP0 and TXP1.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/tests/vc4_mock.c | 4 +-
drivers/gpu/drm
From: Maxime Ripard
Some code path in vc4 are conditional to a generation and cannot be
executed on others. Let's put a WARN_ON if that ever happens.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_hvs.c | 30 --
dr
Add in the compatible string and VC4_GEN_ enum for the D-step
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/gpu/drm/vc4/vc4_drv.c | 1 +
drivers/gpu/drm/vc4/vc4_drv.h | 1 +
drivers/gpu/drm/vc4/vc4_hvs.c | 4
drivers/gpu/drm/vc4/vc4_regs.h | 3 +++
4 files
From: Maxime Ripard
The BCM2712 will have several TXP with small differences. Let's add a
structure tied to the compatible to deal with those differences.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/tests/vc4_mock.c | 4 ++--
drivers/gpu/dr
From: Maxime Ripard
The BCM2712 features a simpler TXP called MOPLET. Let's add support for
it.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_txp.c | 14 ++
1 file changed, 14 insertions(+)
diff --git a/drivers/gpu/drm/vc4/vc4_tx
The D-Step has some minor variations in the hardware, so needs
matching changes to DT.
Add a new DTS file that modifies the existing (C-step) devicetree.
Signed-off-by: Dave Stevenson
---
arch/arm64/boot/dts/broadcom/Makefile | 1 +
arch/arm64/boot/dts/broadcom/bcm2712-d-rpi-5
From: Maxime Ripard
The BCM2712 has an improved display pipeline, most notably with a
different HVS and only HDMI and writeback outputs.
Let's introduce it as a new VideoCore generation and compatible.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/dr
From: Maxime Ripard
The BCM2712 has 3 different pixelvalves that are similar to the ones
found in the previous generations but with slightly different
capabilities.
Express that using a new set of compatibles.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
Acked-by: Rob Herring
From: Maxime Ripard
The MOPLET doesn't have the BYTE_ENABLE field to set, but the TXP and
MOP do, so let's add a boolean to control whether or not we need to set
it.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_drv.h | 1 +
drivers/g
From: Maxime Ripard
BCM2712 has an extra clock exposed by the firmware called DISP, and used
by (at least) the HVS. Let's add it to the list of clocks to register in
Linux.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/clk/bcm/clk-raspberrypi.c
From: Dom Cobley
For performance/power it is beneficial to adjust gpu clocks with arm clock.
This is how the downstream cpufreq driver works
Signed-off-by: Dom Cobley
Signed-off-by: Dave Stevenson
---
drivers/clk/bcm/clk-raspberrypi.c | 1 -
1 file changed, 1 deletion(-)
diff --git a
From: Maxime Ripard
The TXP data structure has a name too generic for the multiple variants
we'll have to support. Let's rename it to mention the SoC it applies to.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/tests/vc4_mock.c | 4 ++--
drive
Use of_device_get_match_data to retrieve the generation value
as set in the struct of_device_id, rather than manually comparing
compatible strings.
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/gpu/drm/vc4/vc4_drv.c | 11 ---
1 file changed, 4 insertions(+), 7
From: Maxime Ripard
The HDMI controllers found in the BCM2712 are largely the ones found in
the BCM2711 with a different PHY.
There's some difference with how timings are split between registers,
and HDMI1 is now able to run at 4k/60Hz.
Signed-off-by: Maxime Ripard
Signed-off-by:
This commit adds the C-step register layout. The D-step will be
added later.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_crtc.c | 47 ++-
drivers/gpu/drm/vc4/vc4_drv.c | 6 +
drivers/gpu/drm/vc4/vc4_drv.h | 30 ++
drivers/gpu/drm/vc4/vc4_hvs.c
horizontal timings whilst at 2pixels/clock
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_crtc.c | 49 --
drivers/gpu/drm/vc4/vc4_drv.h | 2 ++
drivers/gpu/drm/vc4/vc4_regs.h | 6 ++
3 files changed, 55 insertions
The frame count values moved within registers DISPSTAT1 and
DISPSTAT2 with GEN5, so update the accessor function to
accommodate that.
Fixes: b51cd7ad143d ("drm/vc4: hvs: Fix frame count register readout")
Signed-off-by: Dave Stevenson
Reviewed-by: Maxime Ripard
---
drivers/g
From: Maxime Ripard
The BCM2712 has a MOP controller which is basically a new revision of
the TXP.
Express that by adding a new compatible for it.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
Acked-by: Rob Herring (Arm)
---
Documentation/devicetree/bindings/display/brcm
From: Maxime Ripard
The BCM2712 HDMI controller uses a slightly different HDMI controller
than the BCM2711, and a completely different PHY.
Let's introduce a new compatible for it.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
Acked-by: Rob Herring (Arm)
---
Document
From: Maxime Ripard
The BCM2712 has a completely different HVS than the previous
generations, so let's add a new compatible for it.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
Acked-by: Rob Herring (Arm)
---
Documentation/devicetree/bindings/display/brcm,bcm2835-hvs.yam
t using it.
- Link to v1:
https://lore.kernel.org/r/20241023-drm-vc4-2712-support-v1-0-1cc2d5594...@raspberrypi.com
---
Dave Stevenson (11):
drm/vc4: Use of_device_get_match_data to set generation
drm/vc4: Fix reading of frame count on GEN5 / Pi4
drm/vc4: drv: Add support f
On Fri, 25 Oct 2024 at 17:31, Stefan Wahren wrote:
>
> Hi Dave,
>
> Am 25.10.24 um 16:38 schrieb Dave Stevenson:
> > Hi Stefan
> >
> > On Fri, 25 Oct 2024 at 14:36, Stefan Wahren wrote:
> ...
> > Based on that log I think your force_turbo=1 is a red
Hi Stefan
On Fri, 25 Oct 2024 at 14:36, Stefan Wahren wrote:
>
> Hi Dave,
>
> Am 23.10.24 um 17:22 schrieb Dave Stevenson:
> > On Sat, 19 Oct 2024 at 10:34, Stefan Wahren wrote:
> >> Hi,
> >>
> >> Am 17.10.24 um 17:59 schrieb Maxime Ripard:
> &g
From: Dom Cobley
For performance/power it is beneficial to adjust gpu clocks with arm clock.
This is how the downstream cpufreq driver works
Signed-off-by: Dom Cobley
Signed-off-by: Dave Stevenson
---
drivers/clk/bcm/clk-raspberrypi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion
The frame count values moved within registers DISPSTAT1 and
DISPSTAT2 with GEN5, so update the accessor function to
accommodate that.
Fixes: b51cd7ad143d ("drm/vc4: hvs: Fix frame count register readout")
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_h
From: Maxime Ripard
The TXP data structure has a name too generic for the multiple variants
we'll have to support. Let's rename it to mention the SoC it applies to.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/tests/vc4_mock.c | 4 ++--
drive
There are a few minor changes in the display list generation
for the D-step of the chip, so add them.
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_plane.c | 72 ++---
drivers/gpu/drm/vc4/vc4_regs.h | 9 --
2 files changed, 60 insertions
From: Maxime Ripard
The BCM2712 MOP and MOPLET can handle addresses larger than 32bits
through an extra register. We can easily support it and make it
conditional based on the compatible through a boolean in our variant
structure.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
ff-by: Dave Stevenson
---
drivers/clk/bcm/clk-raspberrypi.c | 18 ++
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/drivers/clk/bcm/clk-raspberrypi.c
b/drivers/clk/bcm/clk-raspberrypi.c
index fd7ae0efcf07..89e2c0241ff6 100644
--- a/drivers/clk/bcm/clk-raspberrypi.c
From: Maxime Ripard
We'll have multiple TXP instances in the BCM2712, so we can't use a
single encoder type anymore. Let's tie the encoder type to the
compatible.
Signed-off-by: Maxime Ripard
Signed-off-by: Dave Stevenson
---
drivers/gpu/drm/vc4/vc4_drv.h | 1 +
drivers/gpu/dr
From: Maxime Ripard
The HDMI controllers found in the BCM2712 are largely the ones found in
the BCM2711 with a different PHY.
There's some difference with how timings are split between registers,
and HDMI1 is now able to run at 4k/60Hz.
Signed-off-by: Maxime Ripard
Signed-off-by:
1 - 100 of 623 matches
Mail list logo