/Linux-v5.4/drivers/soc/amlogic/ |
D | meson-canvas.c | 41 static void canvas_write(struct meson_canvas *canvas, u32 reg, u32 val) in canvas_write() argument 43 writel_relaxed(val, canvas->reg_base + reg); in canvas_write() 46 static u32 canvas_read(struct meson_canvas *canvas, u32 reg) in canvas_read() argument 48 return readl_relaxed(canvas->reg_base + reg); in canvas_read() 55 struct meson_canvas *canvas; in meson_canvas_get() local 74 canvas = dev_get_drvdata(&canvas_pdev->dev); in meson_canvas_get() 75 if (!canvas) in meson_canvas_get() 78 return canvas; in meson_canvas_get() 82 int meson_canvas_config(struct meson_canvas *canvas, u8 canvas_index, in meson_canvas_config() argument 90 if (endian && !canvas->supports_endianness) { in meson_canvas_config() [all …]
|
D | Makefile | 2 obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
|
D | Kconfig | 9 Say yes to support the canvas IP for Amlogic SoCs.
|
/Linux-v5.4/Documentation/devicetree/bindings/soc/amlogic/ |
D | amlogic,canvas.txt | 4 A canvas is a collection of metadata that describes a pixel buffer. 8 Many IPs within Amlogic SoCs rely on canvas indexes to read/write pixel data 12 Amlogic SoCs have 256 canvas. 22 - "amlogic,meson8-canvas", "amlogic,canvas" on Meson8 23 - "amlogic,meson8b-canvas", "amlogic,canvas" on Meson8b 24 - "amlogic,meson8m2-canvas", "amlogic,canvas" on Meson8m2 25 - "amlogic,canvas" on GXBB and newer 26 - reg: Base physical address and size of the canvas registers. 30 canvas: video-lut@48 { 31 compatible = "amlogic,canvas";
|
/Linux-v5.4/drivers/gpu/drm/meson/ |
D | meson_drv.c | 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() 254 meson_canvas_free(priv->canvas, priv->canvas_id_osd1); in meson_drv_bind_master() 257 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_1); in meson_drv_bind_master() 259 meson_canvas_free(priv->canvas, priv->canvas_id_osd1); in meson_drv_bind_master() 260 meson_canvas_free(priv->canvas, priv->canvas_id_vd1_0); in meson_drv_bind_master() 263 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_2); in meson_drv_bind_master() [all …]
|
D | meson_crtc.c | 315 meson_canvas_config(priv->canvas, priv->canvas_id_osd1, in meson_crtc_irq() 332 meson_canvas_config(priv->canvas, in meson_crtc_irq() 342 meson_canvas_config(priv->canvas, in meson_crtc_irq() 352 meson_canvas_config(priv->canvas, in meson_crtc_irq()
|
D | meson_drv.h | 34 struct meson_canvas *canvas; member
|
/Linux-v5.4/include/linux/soc/amlogic/ |
D | meson-canvas.h | 39 int meson_canvas_alloc(struct meson_canvas *canvas, u8 *canvas_index); 47 int meson_canvas_free(struct meson_canvas *canvas, u8 canvas_index); 61 int meson_canvas_config(struct meson_canvas *canvas, u8 canvas_index,
|
/Linux-v5.4/arch/arm/boot/dts/ |
D | meson8m2.dtsi | 18 /* the offset of the canvas registers has changed compared to Meson8 */ 21 canvas: video-lut@48 { label 22 compatible = "amlogic,meson8m2-canvas", "amlogic,canvas";
|
D | meson8b.dtsi | 182 canvas: video-lut@48 { label 183 compatible = "amlogic,meson8b-canvas", 184 "amlogic,canvas";
|
D | meson8.dtsi | 205 canvas: video-lut@20 { label 206 compatible = "amlogic,meson8-canvas", 207 "amlogic,canvas";
|
/Linux-v5.4/Documentation/devicetree/bindings/media/ |
D | amlogic,vdec.txt | 39 - amlogic,canvas: should point to a canvas provider node 62 amlogic,canvas = <&canvas>;
|
/Linux-v5.4/drivers/staging/media/meson/vdec/ |
D | vdec_helpers.c | 62 ret = meson_canvas_alloc(sess->core->canvas, canvas_id); in canvas_alloc() 89 meson_canvas_config(core->canvas, canvas_id[0], buf_paddr[0], in set_canvas_yuv420m() 95 meson_canvas_config(core->canvas, canvas_id[1], buf_paddr[1], in set_canvas_yuv420m() 101 meson_canvas_config(core->canvas, canvas_id[2], buf_paddr[2], in set_canvas_yuv420m() 133 meson_canvas_config(core->canvas, canvas_id[0], buf_paddr[0], in set_canvas_nv12m() 139 meson_canvas_config(core->canvas, canvas_id[1], buf_paddr[1], in set_canvas_nv12m()
|
D | vdec.h | 71 struct meson_canvas *canvas; member
|
D | vdec.c | 355 meson_canvas_free(sess->core->canvas, sess->canvas_alloc[i]); in vdec_free_canvas() 1002 core->canvas = meson_canvas_get(dev); in vdec_probe() 1003 if (IS_ERR(core->canvas)) in vdec_probe() 1004 return PTR_ERR(core->canvas); in vdec_probe()
|
/Linux-v5.4/arch/arm64/boot/dts/amlogic/ |
D | meson-gx.dtsi | 451 amlogic,canvas = <&canvas>; 474 canvas: video-lut@48 { label 475 compatible = "amlogic,canvas"; 552 amlogic,canvas = <&canvas>;
|
D | meson-g12-common.dtsi | 1376 canvas: video-lut@48 { label 1377 compatible = "amlogic,canvas"; 2163 amlogic,canvas = <&canvas>;
|
/Linux-v5.4/include/ |
D | Kbuild | 632 header-test- += linux/soc/amlogic/meson-canvas.h
|