From: Maxime Ripard <mrip...@kernel.org>

The BCM2712 features a simpler TXP called MOPLET. Let's add support for
it.

Signed-off-by: Maxime Ripard <mrip...@kernel.org>
Signed-off-by: Dave Stevenson <dave.steven...@raspberrypi.com>
---
 drivers/gpu/drm/vc4/vc4_txp.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/gpu/drm/vc4/vc4_txp.c b/drivers/gpu/drm/vc4/vc4_txp.c
index 0fb8a57652b5..f6b6f8627f61 100644
--- a/drivers/gpu/drm/vc4/vc4_txp.c
+++ b/drivers/gpu/drm/vc4/vc4_txp.c
@@ -524,6 +524,19 @@ static const struct vc4_txp_data bcm2712_mop_data = {
        .supports_40bit_addresses = true,
 };
 
+static const struct vc4_txp_data bcm2712_moplet_data = {
+       .base = {
+               .name = "moplet",
+               .debugfs_name = "moplet_regs",
+               .hvs_available_channels = BIT(1),
+               .hvs_output = 4,
+       },
+       .encoder_type = VC4_ENCODER_TYPE_TXP1,
+       .high_addr_ptr_reg = TXP_DST_PTR_HIGH_MOPLET,
+       .size_minus_one = true,
+       .supports_40bit_addresses = true,
+};
+
 const struct vc4_txp_data bcm2835_txp_data = {
        .base = {
                .name = "txp",
@@ -630,6 +643,7 @@ static void vc4_txp_remove(struct platform_device *pdev)
 
 static const struct of_device_id vc4_txp_dt_match[] = {
        { .compatible = "brcm,bcm2712-mop", .data = &bcm2712_mop_data },
+       { .compatible = "brcm,bcm2712-moplet", .data = &bcm2712_moplet_data },
        { .compatible = "brcm,bcm2835-txp", .data = &bcm2835_txp_data },
        { /* sentinel */ },
 };

-- 
2.34.1

Reply via email to