drm: rcar-du: Update Gen3 output limitations
authorKieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Fri, 31 Aug 2018 18:12:57 +0000 (19:12 +0100)
committerLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Sat, 15 Sep 2018 14:28:32 +0000 (17:28 +0300)
The R-Car Gen3 DU utilises the VSP1 hardware for memory access. The
limits on the RPF and WPF in this pipeline are 8190x8190.

Update the supported maximum sizes accordingly.

Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
drivers/gpu/drm/rcar-du/rcar_du_kms.c

index ed7fa32..7c7aff8 100644 (file)
@@ -512,12 +512,22 @@ int rcar_du_modeset_init(struct rcar_du_device *rcdu)
 
        dev->mode_config.min_width = 0;
        dev->mode_config.min_height = 0;
-       dev->mode_config.max_width = 4095;
-       dev->mode_config.max_height = 2047;
        dev->mode_config.normalize_zpos = true;
        dev->mode_config.funcs = &rcar_du_mode_config_funcs;
        dev->mode_config.helper_private = &rcar_du_mode_config_helper;
 
+       if (rcdu->info->gen < 3) {
+               dev->mode_config.max_width = 4095;
+               dev->mode_config.max_height = 2047;
+       } else {
+               /*
+                * The Gen3 DU uses the VSP1 for memory access, and is limited
+                * to frame sizes of 8190x8190.
+                */
+               dev->mode_config.max_width = 8190;
+               dev->mode_config.max_height = 8190;
+       }
+
        rcdu->num_crtcs = hweight8(rcdu->info->channels_mask);
 
        ret = rcar_du_properties_init(rcdu);