drm/vc4: dsi: Add configuration for BCM2711 DSI1

BCM2711 DSI1 doesn't have the issue with the ARM not being
able to write to the registers, therefore remove the DMA
workaround for that compatible string.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20201203132543.861591-8-maxime@cerno.tech
This commit is contained in:
Dave Stevenson 2020-12-03 14:25:42 +01:00 committed by Maxime Ripard
parent 00aedfa459
commit d0666be8ef
No known key found for this signature in database
GPG Key ID: E3EF0D6F671851C5

View File

@ -1324,6 +1324,13 @@ static const struct drm_encoder_helper_funcs vc4_dsi_encoder_helper_funcs = {
.mode_fixup = vc4_dsi_encoder_mode_fixup,
};
static const struct vc4_dsi_variant bcm2711_dsi1_variant = {
.port = 1,
.debugfs_name = "dsi1_regs",
.regs = dsi1_regs,
.nregs = ARRAY_SIZE(dsi1_regs),
};
static const struct vc4_dsi_variant bcm2835_dsi0_variant = {
.port = 0,
.debugfs_name = "dsi0_regs",
@ -1340,6 +1347,7 @@ static const struct vc4_dsi_variant bcm2835_dsi1_variant = {
};
static const struct of_device_id vc4_dsi_dt_match[] = {
{ .compatible = "brcm,bcm2711-dsi1", &bcm2711_dsi1_variant },
{ .compatible = "brcm,bcm2835-dsi0", &bcm2835_dsi0_variant },
{ .compatible = "brcm,bcm2835-dsi1", &bcm2835_dsi1_variant },
{}
@ -1524,8 +1532,8 @@ static int vc4_dsi_bind(struct device *dev, struct device *master, void *data)
return -ENODEV;
}
/* DSI1 has a broken AXI slave that doesn't respond to writes
* from the ARM. It does handle writes from the DMA engine,
/* DSI1 on BCM2835/6/7 has a broken AXI slave that doesn't respond to
* writes from the ARM. It does handle writes from the DMA engine,
* so set up a channel for talking to it.
*/
if (dsi->variant->broken_axi_workaround) {