| /kernel/linux/linux-5.10/drivers/soc/amlogic/ |
| D | meson-canvas.c | 12 #include <linux/soc/amlogic/meson-canvas.h> 36 spinlock_t lock; /* canvas device lock */ 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 57 canvas_node = of_parse_phandle(dev->of_node, "amlogic,canvas", 0); in meson_canvas_get() 70 * If priv is NULL, it's probably because the canvas hasn't in meson_canvas_get() 74 canvas = dev_get_drvdata(&canvas_pdev->dev); in meson_canvas_get() [all …]
|
| D | Kconfig | 5 tristate "Amlogic Meson Canvas driver" 9 Say yes to support the canvas IP for Amlogic SoCs.
|
| D | Makefile | 2 obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
|
| /kernel/linux/linux-6.6/drivers/soc/amlogic/ |
| D | meson-canvas.c | 13 #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 …]
|
| D | Kconfig | 5 tristate "Amlogic Meson Canvas driver" 9 Say yes to support the canvas IP for Amlogic SoCs.
|
| D | Makefile | 2 obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
|
| /kernel/linux/linux-6.6/include/linux/soc/amlogic/ |
| D | meson-canvas.h | 27 * 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 …]
|
| /kernel/linux/linux-5.10/include/linux/soc/amlogic/ |
| D | meson-canvas.h | 27 * 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 …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/soc/amlogic/ |
| D | amlogic,canvas.yaml | 5 $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 …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/soc/amlogic/ |
| D | amlogic,canvas.yaml | 5 $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 …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/meson/ |
| D | meson_drv.c | 16 #include <linux/soc/amlogic/meson-canvas.h> 261 priv->canvas = meson_canvas_get(dev); in meson_drv_bind_master() 262 if (IS_ERR(priv->canvas)) { in meson_drv_bind_master() 263 ret = PTR_ERR(priv->canvas); in meson_drv_bind_master() 267 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_osd1); in meson_drv_bind_master() 270 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_0); in meson_drv_bind_master() 272 meson_canvas_free(priv->canvas, priv->canvas_id_osd1); in meson_drv_bind_master() 275 ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_1); in meson_drv_bind_master() 277 meson_canvas_free(priv->canvas, priv->canvas_id_osd1); in meson_drv_bind_master() 278 meson_canvas_free(priv->canvas, priv->canvas_id_vd1_0); in meson_drv_bind_master() [all …]
|
| D | meson_crtc.c | 13 #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()
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/meson/ |
| D | meson_drv.c | 16 #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 …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/media/ |
| D | amlogic,gx-vdec.yaml | 81 amlogic,canvas: 82 description: should point to a canvas provider node 122 - amlogic,canvas 139 amlogic,canvas = <&canvas>;
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/media/ |
| D | amlogic,gx-vdec.yaml | 82 amlogic,canvas: 83 description: should point to a canvas provider node 123 - amlogic,canvas 140 amlogic,canvas = <&canvas>;
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/ |
| D | amlogic,meson-vpu.yaml | 33 It fetches the frames addresses, stride and parameters from the "Canvas" memory. 81 amlogic,canvas: 82 description: should point to a canvas provider node 113 - amlogic,canvas 126 amlogic,canvas = <&canvas>;
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/ |
| D | amlogic,meson-vpu.yaml | 33 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>;
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/amlogic/ |
| 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";
|
| /kernel/linux/linux-5.10/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";
|
| /kernel/linux/linux-5.10/drivers/staging/media/meson/vdec/ |
| D | vdec.h | 16 #include <linux/soc/amlogic/meson-canvas.h> 58 * @canvas: canvas provider reference 77 struct meson_canvas *canvas; member 206 * @canvas_alloc: array of all the canvas IDs allocated 207 * @canvas_num: number of canvas IDs allocated
|
| D | vdec_helpers.c | 85 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()
|
| /kernel/linux/linux-6.6/drivers/staging/media/meson/vdec/ |
| D | vdec.h | 16 #include <linux/soc/amlogic/meson-canvas.h> 58 * @canvas: canvas provider reference 79 struct meson_canvas *canvas; member 213 * @canvas_alloc: array of all the canvas IDs allocated 214 * @canvas_num: number of canvas IDs allocated
|
| D | vdec_helpers.c | 85 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()
|
| /kernel/linux/linux-6.6/arch/arm64/boot/dts/amlogic/ |
| D | meson-gx.dtsi | 526 amlogic,canvas = <&canvas>; 549 canvas: video-lut@48 { label 550 compatible = "amlogic,canvas"; 634 amlogic,canvas = <&canvas>;
|
| /kernel/linux/linux-5.10/arch/arm64/boot/dts/amlogic/ |
| D | meson-gx.dtsi | 517 amlogic,canvas = <&canvas>; 540 canvas: video-lut@48 { label 541 compatible = "amlogic,canvas"; 625 amlogic,canvas = <&canvas>;
|