Lines Matching +full:bcm2835 +full:- +full:v3d
1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2014-2015 Broadcom
11 * OpenGL ES 2.0-compatible 3D engine called V3D, and a highly
16 * compute shader-style jobs using the same shader processor as is
26 #include <linux/dma-mapping.h>
59 map = devm_ioremap_resource(&dev->dev, res); in vc4_ioremap_regs()
73 if (args->pad != 0) in vc4_get_param_ioctl()
74 return -EINVAL; in vc4_get_param_ioctl()
76 if (!vc4->v3d) in vc4_get_param_ioctl()
77 return -ENODEV; in vc4_get_param_ioctl()
79 switch (args->param) { in vc4_get_param_ioctl()
84 args->value = V3D_READ(V3D_IDENT0); in vc4_get_param_ioctl()
91 args->value = V3D_READ(V3D_IDENT1); in vc4_get_param_ioctl()
98 args->value = V3D_READ(V3D_IDENT2); in vc4_get_param_ioctl()
107 args->value = true; in vc4_get_param_ioctl()
110 DRM_DEBUG("Unknown parameter %d\n", args->param); in vc4_get_param_ioctl()
111 return -EINVAL; in vc4_get_param_ioctl()
123 return -ENOMEM; in vc4_open()
126 file->driver_priv = vc4file; in vc4_open()
133 struct vc4_file *vc4file = file->driver_priv; in vc4_close()
135 if (vc4file->bin_bo_used) in vc4_close()
205 struct device_driver *drv = &drivers[i]->driver; in vc4_match_add_drivers()
226 dev->coherent_dma_mask = DMA_BIT_MASK(32); in vc4_drm_bind()
228 /* If VC4 V3D is missing, don't advertise render nodes. */ in vc4_drm_bind()
238 drm = &vc4->base; in vc4_drm_bind()
240 INIT_LIST_HEAD(&vc4->debugfs_list); in vc4_drm_bind()
242 mutex_init(&vc4->bin_bo_lock); in vc4_drm_bind()
306 * - The TXP driver needs to be bound before the PixelValves (CRTC)
308 * - The HDMI driver needs to be bound after the HVS so that we can
326 struct device *dev = &pdev->dev; in vc4_platform_drm_probe()
336 component_master_del(&pdev->dev, &vc4_drm_ops); in vc4_platform_drm_remove()
342 { .compatible = "brcm,bcm2711-vc5", },
343 { .compatible = "brcm,bcm2835-vc4", },
344 { .compatible = "brcm,cygnus-vc4", },
353 .name = "vc4-drm",
380 MODULE_ALIAS("platform:vc4-drm");