Lines Matching +full:2 +full:- +full:bit

1 // SPDX-License-Identifier: GPL-2.0+
3 * rcar_du_drv.c -- R-Car Display Unit DRM driver
5 * Copyright (C) 2013-2015 Renesas Electronics Corporation
32 /* -----------------------------------------------------------------------------
37 .gen = 2,
41 .channels_mask = BIT(1) | BIT(0),
47 .possible_crtcs = BIT(1) | BIT(0),
51 .possible_crtcs = BIT(0),
59 .gen = 2,
63 .channels_mask = BIT(1) | BIT(0),
69 .possible_crtcs = BIT(0),
73 .possible_crtcs = BIT(1),
80 .gen = 2,
84 .channels_mask = BIT(1) | BIT(0),
91 .possible_crtcs = BIT(0),
95 .possible_crtcs = BIT(1),
99 .possible_crtcs = BIT(0) | BIT(1),
100 .port = 2,
111 .channels_mask = BIT(2) | BIT(1) | BIT(0),
118 .possible_crtcs = BIT(2),
122 .possible_crtcs = BIT(1),
126 .possible_crtcs = BIT(0),
127 .port = 2,
131 .dpll_mask = BIT(1),
140 .channels_mask = BIT(3) | BIT(1) | BIT(0),
147 .possible_crtcs = BIT(2),
151 .possible_crtcs = BIT(1),
155 .possible_crtcs = BIT(0),
156 .port = 2,
160 .dpll_mask = BIT(1),
167 .channels_mask = BIT(1) | BIT(0),
173 .possible_crtcs = BIT(0) | BIT(1),
177 .possible_crtcs = BIT(0),
181 .possible_crtcs = BIT(1),
182 .port = 2,
185 .num_lvds = 2,
186 .lvds_clk_mask = BIT(1) | BIT(0),
195 .channels_mask = BIT(3) | BIT(1) | BIT(0),
202 .possible_crtcs = BIT(2),
206 .possible_crtcs = BIT(1),
210 .possible_crtcs = BIT(0),
211 .port = 2,
215 .dpll_mask = BIT(1),
222 .channels_mask = BIT(1) | BIT(0),
229 .possible_crtcs = BIT(0),
233 .possible_crtcs = BIT(1) | BIT(0),
240 .gen = 2,
245 .channels_mask = BIT(2) | BIT(1) | BIT(0),
253 .possible_crtcs = BIT(2) | BIT(1) | BIT(0),
257 .possible_crtcs = BIT(0),
261 .possible_crtcs = BIT(2) | BIT(1),
262 .port = 2,
265 .num_lvds = 2,
268 /* M2-W (r8a7791) and M2-N (r8a7793) are identical */
270 .gen = 2,
274 .channels_mask = BIT(1) | BIT(0),
281 .possible_crtcs = BIT(1) | BIT(0),
285 .possible_crtcs = BIT(0),
293 .gen = 2,
297 .channels_mask = BIT(1) | BIT(0),
301 .possible_crtcs = BIT(0),
305 .possible_crtcs = BIT(1),
312 .gen = 2,
316 .channels_mask = BIT(1) | BIT(0),
323 .possible_crtcs = BIT(0),
327 .possible_crtcs = BIT(1),
339 .channels_mask = BIT(3) | BIT(2) | BIT(1) | BIT(0),
346 .possible_crtcs = BIT(3),
350 .possible_crtcs = BIT(1),
354 .possible_crtcs = BIT(2),
355 .port = 2,
358 .possible_crtcs = BIT(0),
363 .dpll_mask = BIT(2) | BIT(1),
372 .channels_mask = BIT(2) | BIT(1) | BIT(0),
379 .possible_crtcs = BIT(2),
383 .possible_crtcs = BIT(1),
387 .possible_crtcs = BIT(0),
388 .port = 2,
392 .dpll_mask = BIT(1),
401 .channels_mask = BIT(3) | BIT(1) | BIT(0),
408 .possible_crtcs = BIT(2),
412 .possible_crtcs = BIT(1),
416 .possible_crtcs = BIT(0),
417 .port = 2,
421 .dpll_mask = BIT(1),
430 .channels_mask = BIT(0),
437 .possible_crtcs = BIT(0),
441 .possible_crtcs = BIT(0),
452 .channels_mask = BIT(1) | BIT(0),
459 .possible_crtcs = BIT(0) | BIT(1),
463 .possible_crtcs = BIT(0),
467 .possible_crtcs = BIT(1),
468 .port = 2,
471 .num_lvds = 2,
472 .lvds_clk_mask = BIT(1) | BIT(0),
476 { .compatible = "renesas,du-r8a7742", .data = &rcar_du_r8a7790_info },
477 { .compatible = "renesas,du-r8a7743", .data = &rzg1_du_r8a7743_info },
478 { .compatible = "renesas,du-r8a7744", .data = &rzg1_du_r8a7743_info },
479 { .compatible = "renesas,du-r8a7745", .data = &rzg1_du_r8a7745_info },
480 { .compatible = "renesas,du-r8a77470", .data = &rzg1_du_r8a77470_info },
481 { .compatible = "renesas,du-r8a774a1", .data = &rcar_du_r8a774a1_info },
482 { .compatible = "renesas,du-r8a774b1", .data = &rcar_du_r8a774b1_info },
483 { .compatible = "renesas,du-r8a774c0", .data = &rcar_du_r8a774c0_info },
484 { .compatible = "renesas,du-r8a774e1", .data = &rcar_du_r8a774e1_info },
485 { .compatible = "renesas,du-r8a7779", .data = &rcar_du_r8a7779_info },
486 { .compatible = "renesas,du-r8a7790", .data = &rcar_du_r8a7790_info },
487 { .compatible = "renesas,du-r8a7791", .data = &rcar_du_r8a7791_info },
488 { .compatible = "renesas,du-r8a7792", .data = &rcar_du_r8a7792_info },
489 { .compatible = "renesas,du-r8a7793", .data = &rcar_du_r8a7791_info },
490 { .compatible = "renesas,du-r8a7794", .data = &rcar_du_r8a7794_info },
491 { .compatible = "renesas,du-r8a7795", .data = &rcar_du_r8a7795_info },
492 { .compatible = "renesas,du-r8a7796", .data = &rcar_du_r8a7796_info },
493 { .compatible = "renesas,du-r8a77961", .data = &rcar_du_r8a7796_info },
494 { .compatible = "renesas,du-r8a77965", .data = &rcar_du_r8a77965_info },
495 { .compatible = "renesas,du-r8a77970", .data = &rcar_du_r8a77970_info },
496 { .compatible = "renesas,du-r8a77980", .data = &rcar_du_r8a77970_info },
497 { .compatible = "renesas,du-r8a77990", .data = &rcar_du_r8a7799x_info },
498 { .compatible = "renesas,du-r8a77995", .data = &rcar_du_r8a7799x_info },
504 /* -----------------------------------------------------------------------------
514 .name = "rcar-du",
515 .desc = "Renesas R-Car Display Unit",
521 /* -----------------------------------------------------------------------------
530 return drm_mode_config_helper_suspend(rcdu->ddev); in rcar_du_pm_suspend()
537 return drm_mode_config_helper_resume(rcdu->ddev); in rcar_du_pm_resume()
545 /* -----------------------------------------------------------------------------
552 struct drm_device *ddev = rcdu->ddev; in rcar_du_remove()
570 /* Allocate and initialize the R-Car device structure. */ in rcar_du_probe()
571 rcdu = devm_kzalloc(&pdev->dev, sizeof(*rcdu), GFP_KERNEL); in rcar_du_probe()
573 return -ENOMEM; in rcar_du_probe()
575 rcdu->dev = &pdev->dev; in rcar_du_probe()
576 rcdu->info = of_device_get_match_data(rcdu->dev); in rcar_du_probe()
582 rcdu->mmio = devm_ioremap_resource(&pdev->dev, mem); in rcar_du_probe()
583 if (IS_ERR(rcdu->mmio)) in rcar_du_probe()
584 return PTR_ERR(rcdu->mmio); in rcar_du_probe()
587 ddev = drm_dev_alloc(&rcar_du_driver, &pdev->dev); in rcar_du_probe()
591 rcdu->ddev = ddev; in rcar_du_probe()
592 ddev->dev_private = rcdu; in rcar_du_probe()
596 if (ret != -EPROBE_DEFER) in rcar_du_probe()
597 dev_err(&pdev->dev, in rcar_du_probe()
602 ddev->irq_enabled = 1; in rcar_du_probe()
612 DRM_INFO("Device %s probed\n", dev_name(&pdev->dev)); in rcar_du_probe()
628 .name = "rcar-du",
649 MODULE_DESCRIPTION("Renesas R-Car Display Unit DRM Driver");