Lines Matching +full:vga +full:- +full:format
1 // SPDX-License-Identifier: GPL-2.0-only
5 * This is based on code and know-how in the previous frame buffer
6 * driver in drivers/video/fbdev/amba-clcd.c:
46 .compatible = "arm,core-module-integrator",
50 .compatible = "arm,versatile-sysreg",
54 .compatible = "arm,realview-eb-syscon",
58 .compatible = "arm,realview-pb1176-syscon",
62 .compatible = "arm,realview-pb11mp-syscon",
66 .compatible = "arm,realview-pba8-syscon",
70 .compatible = "arm,realview-pbx-syscon",
74 .compatible = "arm,vexpress-muxfpga",
82 .compatible = "arm,im-pd1-syscon",
97 /* Bits 11,12,13 controls the LCD or VGA bridge type */
110 /* 0 = 24bit VGA, 1 = 18bit VGA */
115 static void pl111_integrator_enable(struct drm_device *drm, u32 format) in pl111_integrator_enable() argument
119 dev_info(drm->dev, "enable Integrator CLCD connectors\n"); in pl111_integrator_enable()
125 switch (format) { in pl111_integrator_enable()
137 dev_err(drm->dev, "unhandled format on Integrator 0x%08x\n", in pl111_integrator_enable()
138 format); in pl111_integrator_enable()
155 static void pl111_impd1_enable(struct drm_device *drm, u32 format) in pl111_impd1_enable() argument
159 dev_info(drm->dev, "enable IM-PD1 CLCD connectors\n"); in pl111_impd1_enable()
170 dev_info(drm->dev, "disable IM-PD1 CLCD connectors\n"); in pl111_impd1_disable()
197 dev_info(drm->dev, "disable Versatile CLCD connectors\n"); in pl111_versatile_disable()
204 static void pl111_versatile_enable(struct drm_device *drm, u32 format) in pl111_versatile_enable() argument
208 dev_info(drm->dev, "enable Versatile CLCD connectors\n"); in pl111_versatile_enable()
210 switch (format) { in pl111_versatile_enable()
230 dev_err(drm->dev, "unhandled format on Versatile 0x%08x\n", in pl111_versatile_enable()
231 format); in pl111_versatile_enable()
250 dev_info(drm->dev, "disable RealView CLCD connectors\n"); in pl111_realview_clcd_disable()
257 static void pl111_realview_clcd_enable(struct drm_device *drm, u32 format) in pl111_realview_clcd_enable() argument
259 dev_info(drm->dev, "enable RealView CLCD connectors\n"); in pl111_realview_clcd_enable()
324 * The IM-PD1 variant is a PL110 with a bunch of broken, or not
328 .name = "PL110 IM-PD1",
338 * This is the in-between PL110 variant found in the ARM Versatile,
394 return -ENODEV; in pl111_vexpress_clcd_init()
402 return -EINVAL; in pl111_vexpress_clcd_init()
438 } else if (ct_clcd == dev->of_node) { in pl111_vexpress_clcd_init()
445 return -ENODEV; in pl111_vexpress_clcd_init()
452 return -EPROBE_DEFER; in pl111_vexpress_clcd_init()
455 map = devm_regmap_init_vexpress_config(&pdev->dev); in pl111_vexpress_clcd_init()
465 return -ENODEV; in pl111_vexpress_clcd_init()
468 priv->variant = &pl111_vexpress; in pl111_vexpress_clcd_init()
484 /* Non-ARM reference designs, just bail out */ in pl111_versatile_init()
488 versatile_clcd_type = (enum versatile_clcd)clcd_id->data; in pl111_versatile_init()
495 dev_err(dev, "Versatile Express init failed - %d", ret); in pl111_versatile_init()
500 * On the Integrator, check if we should use the IM-PD1 instead, in pl111_versatile_init()
508 versatile_clcd_type = (enum versatile_clcd)clcd_id->data; in pl111_versatile_init()
521 priv->variant = &pl110_integrator; in pl111_versatile_init()
522 priv->variant_display_enable = pl111_integrator_enable; in pl111_versatile_init()
527 priv->variant = &pl110_impd1; in pl111_versatile_init()
528 priv->variant_display_enable = pl111_impd1_enable; in pl111_versatile_init()
529 priv->variant_display_disable = pl111_impd1_disable; in pl111_versatile_init()
530 dev_info(dev, "set up callbacks for IM-PD1 PL110\n"); in pl111_versatile_init()
535 priv->variant = &pl110_versatile; in pl111_versatile_init()
536 priv->variant_display_enable = pl111_versatile_enable; in pl111_versatile_init()
537 priv->variant_display_disable = pl111_versatile_disable; in pl111_versatile_init()
543 priv->ienb = CLCD_PL111_IENB; in pl111_versatile_init()
544 priv->ctrl = CLCD_PL111_CNTL; in pl111_versatile_init()
553 priv->variant = &pl111_realview; in pl111_versatile_init()
554 priv->variant_display_enable = pl111_realview_clcd_enable; in pl111_versatile_init()
555 priv->variant_display_disable = pl111_realview_clcd_disable; in pl111_versatile_init()