Home
last modified time | relevance | path

Searched full:canvas (Results 1 – 25 of 33) sorted by relevance

12

/linux-6.12.1/drivers/soc/amlogic/
Dmeson-canvas.c13 #include <linux/soc/amlogic/meson-canvas.h>
37 spinlock_t lock; /* canvas device lock */
42 static void canvas_write(struct meson_canvas *canvas, u32 reg, u32 val) in canvas_write() argument
44 writel_relaxed(val, canvas->reg_base + reg); in canvas_write()
47 static u32 canvas_read(struct meson_canvas *canvas, u32 reg) in canvas_read() argument
49 return readl_relaxed(canvas->reg_base + reg); in canvas_read()
56 struct meson_canvas *canvas; in meson_canvas_get() local
58 canvas_node = of_parse_phandle(dev->of_node, "amlogic,canvas", 0); in meson_canvas_get()
71 * If priv is NULL, it's probably because the canvas hasn't in meson_canvas_get()
75 canvas = dev_get_drvdata(&canvas_pdev->dev); in meson_canvas_get()
[all …]
DKconfig5 tristate "Amlogic Meson Canvas driver"
9 Say yes to support the canvas IP for Amlogic SoCs.
DMakefile2 obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
/linux-6.12.1/include/linux/soc/amlogic/
Dmeson-canvas.h27 * meson_canvas_get() - get a canvas provider instance
34 * meson_canvas_alloc() - take ownership of a canvas
36 * @canvas: canvas provider instance retrieved from meson_canvas_get()
37 * @canvas_index: will be filled with the canvas ID
39 int meson_canvas_alloc(struct meson_canvas *canvas, u8 *canvas_index);
42 * meson_canvas_free() - remove ownership from a canvas
44 * @canvas: canvas provider instance retrieved from meson_canvas_get()
45 * @canvas_index: canvas ID that was obtained via meson_canvas_alloc()
47 int meson_canvas_free(struct meson_canvas *canvas, u8 canvas_index);
50 * meson_canvas_config() - configure a canvas
[all …]
/linux-6.12.1/Documentation/devicetree/bindings/soc/amlogic/
Damlogic,canvas.yaml5 $id: http://devicetree.org/schemas/soc/amlogic/amlogic,canvas.yaml#
8 title: Amlogic Canvas Video Lookup Table
15 A canvas is a collection of metadata that describes a pixel buffer.
19 Many IPs within Amlogic SoCs rely on canvas indexes to read/write pixel data
23 Amlogic SoCs have 256 canvas.
30 - amlogic,meson8-canvas
31 - amlogic,meson8b-canvas
32 - amlogic,meson8m2-canvas
33 - const: amlogic,canvas
34 - const: amlogic,canvas # GXBB and newer SoCs
[all …]
/linux-6.12.1/drivers/gpu/drm/meson/
Dmeson_drv.c16 #include <linux/soc/amlogic/meson-canvas.h>
243 priv->canvas = meson_canvas_get(dev); in meson_drv_bind_master()
244 if (IS_ERR(priv->canvas)) { in meson_drv_bind_master()
245 ret = PTR_ERR(priv->canvas); in meson_drv_bind_master()
249 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_osd1); in meson_drv_bind_master()
252 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_0); in meson_drv_bind_master()
255 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_1); in meson_drv_bind_master()
258 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_2); in meson_drv_bind_master()
366 meson_canvas_free(priv->canvas, priv->canvas_id_vd1_2); in meson_drv_bind_master()
368 meson_canvas_free(priv->canvas, priv->canvas_id_vd1_1); in meson_drv_bind_master()
[all …]
Dmeson_crtc.c13 #include <linux/soc/amlogic/meson-canvas.h>
370 meson_canvas_config(priv->canvas, priv->canvas_id_osd1, in meson_crtc_irq()
443 meson_canvas_config(priv->canvas, in meson_crtc_irq()
453 meson_canvas_config(priv->canvas, in meson_crtc_irq()
463 meson_canvas_config(priv->canvas, in meson_crtc_irq()
Dmeson_drv.h50 struct meson_canvas *canvas; member
Dmeson_plane.c180 /* Set up BLK0 to point to the right canvas */ in meson_plane_atomic_update()
367 /* Update Canvas with buffer address */ in meson_plane_atomic_update()
/linux-6.12.1/Documentation/devicetree/bindings/media/
Damlogic,gx-vdec.yaml82 amlogic,canvas:
83 description: should point to a canvas provider node
123 - amlogic,canvas
140 amlogic,canvas = <&canvas>;
/linux-6.12.1/Documentation/devicetree/bindings/display/
Damlogic,meson-vpu.yaml33 It fetches the frames addresses, stride and parameters from the "Canvas" memory.
81 amlogic,canvas:
82 description: should point to a canvas provider node
118 - amlogic,canvas
131 amlogic,canvas = <&canvas>;
/linux-6.12.1/arch/arm/boot/dts/amlogic/
Dmeson8m2.dtsi18 /* the offset of the canvas registers has changed compared to Meson8 */
21 canvas: video-lut@48 { label
22 compatible = "amlogic,meson8m2-canvas", "amlogic,canvas";
Dmeson8b.dtsi245 canvas: video-lut@48 { label
246 compatible = "amlogic,meson8b-canvas",
247 "amlogic,canvas";
Dmeson8.dtsi268 canvas: video-lut@20 { label
269 compatible = "amlogic,meson8-canvas",
270 "amlogic,canvas";
/linux-6.12.1/drivers/staging/media/meson/vdec/
Dvdec.h16 #include <linux/soc/amlogic/meson-canvas.h>
58 * @canvas: canvas provider reference
79 struct meson_canvas *canvas; member
212 * @canvas_alloc: array of all the canvas IDs allocated
213 * @canvas_num: number of canvas IDs allocated
Dvdec_helpers.c85 dev_err(sess->core->dev, "Reached max number of canvas\n"); in canvas_alloc()
89 ret = meson_canvas_alloc(sess->core->canvas, canvas_id); in canvas_alloc()
116 meson_canvas_config(core->canvas, canvas_id[0], buf_paddr[0], in set_canvas_yuv420m()
122 meson_canvas_config(core->canvas, canvas_id[1], buf_paddr[1], in set_canvas_yuv420m()
128 meson_canvas_config(core->canvas, canvas_id[2], buf_paddr[2], in set_canvas_yuv420m()
160 meson_canvas_config(core->canvas, canvas_id[0], buf_paddr[0], in set_canvas_nv12m()
166 meson_canvas_config(core->canvas, canvas_id[1], buf_paddr[1], in set_canvas_nv12m()
Dvdec_helpers.h16 * @reg_base: Registry bases of where to write the canvas indexes
Dvdec.c371 meson_canvas_free(sess->core->canvas, sess->canvas_alloc[i]); in vdec_free_canvas()
1027 core->canvas = meson_canvas_get(dev); in vdec_probe()
1028 if (IS_ERR(core->canvas)) in vdec_probe()
1029 return PTR_ERR(core->canvas); in vdec_probe()
/linux-6.12.1/arch/arm64/boot/dts/amlogic/
Dmeson-gx.dtsi526 amlogic,canvas = <&canvas>;
549 canvas: video-lut@48 { label
550 compatible = "amlogic,canvas";
634 amlogic,canvas = <&canvas>;
Dmeson-g12-common.dtsi1584 canvas: video-lut@48 { label
1585 compatible = "amlogic,canvas";
2140 amlogic,canvas = <&canvas>;
2161 amlogic,canvas = <&canvas>;
/linux-6.12.1/Documentation/ABI/testing/
Dsysfs-bus-surface_aggregator-tabletsw18 - "folded-canvas": The type-cover has been folded back
/linux-6.12.1/drivers/media/platform/samsung/exynos4-is/
Dfimc-lite-reg.h80 /* Camera Output Canvas */
/linux-6.12.1/drivers/platform/surface/
Dsurface_aggregator_tabletsw.c230 return "folded-canvas"; in ssam_kip_cover_state_name()
371 return "folded-canvas"; in ssam_pos_state_name_cover()
/linux-6.12.1/drivers/mmc/core/
Dquirks.h20 * Kingston Canvas Go! Plus microSD cards never finish SD cache flush.
/linux-6.12.1/Documentation/userspace-api/media/dvb/
Dlegacy_dvb_osd.rst21 It is a kind of canvas one can draw on.

12