* [PATCH v14 1/8] media: v4l2: Add ignore_streaming flag
2023-11-08 19:29 [PATCH v14 0/8] Wave5 codec driver Sebastian Fricke
@ 2023-11-08 19:29 ` Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 2/8] media: v4l2: Allow M2M job queuing w/o streaming CAP queue Sebastian Fricke
` (4 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Sebastian Fricke @ 2023-11-08 19:29 UTC (permalink / raw)
To: Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team,
Conor Dooley, Nas Chung, Fabio Estevam, Krzysztof Kozlowski,
Jackson Lee, Shawn Guo, Sascha Hauer, Hans Verkuil, Philipp Zabel,
Rob Herring
Cc: Ivan Bornyakov, Deborah Brouwer, Nicolas Dufresne, devicetree,
Robert Beckett, Sebastian Fricke, linux-arm-kernel, kernel,
linux-kernel, linux-media
Add a new flag to the `struct v4l2_m2m_dev` to toggle whether a queue
must be streaming in order to allow queuing jobs to the ready queue.
Currently, both queues (CAPTURE & OUTPUT) must be streaming in order to
allow adding new jobs. This behavior limits the usability of M2M for
some drivers, as these have to be able, to perform analysis of the
sequence to ensure, that userspace prepares the CAPTURE queue correctly.
Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
---
include/media/v4l2-mem2mem.h | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/include/media/v4l2-mem2mem.h b/include/media/v4l2-mem2mem.h
index d6c8eb2b5201..1288fe364fab 100644
--- a/include/media/v4l2-mem2mem.h
+++ b/include/media/v4l2-mem2mem.h
@@ -84,6 +84,12 @@ struct v4l2_m2m_queue_ctx {
* @last_src_buf: indicate the last source buffer for draining
* @next_buf_last: next capture queud buffer will be tagged as last
* @has_stopped: indicate the device has been stopped
+ * @ignore_cap_streaming: If true, job_ready can be called even if the CAPTURE
+ * queue is not streaming. This allows firmware to
+ * analyze the bitstream header which arrives on the
+ * OUTPUT queue. The driver must implement the job_ready
+ * callback correctly to make sure that the requirements
+ * for actual decoding are met.
* @m2m_dev: opaque pointer to the internal data to handle M2M context
* @cap_q_ctx: Capture (output to memory) queue context
* @out_q_ctx: Output (input from memory) queue context
@@ -106,6 +112,7 @@ struct v4l2_m2m_ctx {
struct vb2_v4l2_buffer *last_src_buf;
bool next_buf_last;
bool has_stopped;
+ bool ignore_cap_streaming;
/* internal use only */
struct v4l2_m2m_dev *m2m_dev;
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v14 2/8] media: v4l2: Allow M2M job queuing w/o streaming CAP queue
2023-11-08 19:29 [PATCH v14 0/8] Wave5 codec driver Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 1/8] media: v4l2: Add ignore_streaming flag Sebastian Fricke
@ 2023-11-08 19:29 ` Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 3/8] media: platform: chips-media: Move Coda to separate folder Sebastian Fricke
` (3 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Sebastian Fricke @ 2023-11-08 19:29 UTC (permalink / raw)
To: Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team,
Conor Dooley, Nas Chung, Fabio Estevam, Krzysztof Kozlowski,
Jackson Lee, Shawn Guo, Sascha Hauer, Hans Verkuil, Philipp Zabel,
Rob Herring
Cc: Ivan Bornyakov, Deborah Brouwer, Nicolas Dufresne, devicetree,
Robert Beckett, Sebastian Fricke, linux-arm-kernel, kernel,
linux-kernel, linux-media
Allow decoder drivers to enable set the ignore_streaming flag on their
CAPTURE queue, to allow queuing jobs to the M2M ready queue and perform
firmware sequence analysis with just a streaming OUTPUT queue and
available bitstream data.
Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
---
drivers/media/v4l2-core/v4l2-mem2mem.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/media/v4l2-core/v4l2-mem2mem.c b/drivers/media/v4l2-core/v4l2-mem2mem.c
index 0cc30397fbad..9e983176542b 100644
--- a/drivers/media/v4l2-core/v4l2-mem2mem.c
+++ b/drivers/media/v4l2-core/v4l2-mem2mem.c
@@ -301,9 +301,12 @@ static void __v4l2_m2m_try_queue(struct v4l2_m2m_dev *m2m_dev,
dprintk("Trying to schedule a job for m2m_ctx: %p\n", m2m_ctx);
- if (!m2m_ctx->out_q_ctx.q.streaming
- || !m2m_ctx->cap_q_ctx.q.streaming) {
- dprintk("Streaming needs to be on for both queues\n");
+ if (!m2m_ctx->out_q_ctx.q.streaming ||
+ (!m2m_ctx->cap_q_ctx.q.streaming && !m2m_ctx->ignore_cap_streaming)) {
+ if (!m2m_ctx->ignore_cap_streaming)
+ dprintk("Streaming needs to be on for both queues\n");
+ else
+ dprintk("Streaming needs to be on for the OUTPUT queue\n");
return;
}
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v14 3/8] media: platform: chips-media: Move Coda to separate folder
2023-11-08 19:29 [PATCH v14 0/8] Wave5 codec driver Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 1/8] media: v4l2: Add ignore_streaming flag Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 2/8] media: v4l2: Allow M2M job queuing w/o streaming CAP queue Sebastian Fricke
@ 2023-11-08 19:29 ` Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings Sebastian Fricke
` (2 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Sebastian Fricke @ 2023-11-08 19:29 UTC (permalink / raw)
To: Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team,
Conor Dooley, Nas Chung, Fabio Estevam, Krzysztof Kozlowski,
Jackson Lee, Shawn Guo, Sascha Hauer, Hans Verkuil, Philipp Zabel,
Rob Herring
Cc: Ivan Bornyakov, Deborah Brouwer, Nicolas Dufresne, devicetree,
Robert Beckett, Sebastian Fricke, linux-arm-kernel, kernel,
linux-kernel, linux-media
Prepare the folder structure for a second Chips&Media driver.
Move the Coda driver to a sub-directory.
Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
---
MAINTAINERS | 2 +-
drivers/media/platform/chips-media/Kconfig | 17 +----------------
drivers/media/platform/chips-media/Makefile | 5 +----
drivers/media/platform/chips-media/coda/Kconfig | 18 ++++++++++++++++++
drivers/media/platform/chips-media/coda/Makefile | 6 ++++++
.../media/platform/chips-media/{ => coda}/coda-bit.c | 0
.../platform/chips-media/{ => coda}/coda-common.c | 0
.../media/platform/chips-media/{ => coda}/coda-gdi.c | 0
.../media/platform/chips-media/{ => coda}/coda-h264.c | 0
.../media/platform/chips-media/{ => coda}/coda-jpeg.c | 0
.../media/platform/chips-media/{ => coda}/coda-mpeg2.c | 0
.../media/platform/chips-media/{ => coda}/coda-mpeg4.c | 0
drivers/media/platform/chips-media/{ => coda}/coda.h | 0
.../media/platform/chips-media/{ => coda}/coda_regs.h | 0
.../media/platform/chips-media/{ => coda}/imx-vdoa.c | 0
.../media/platform/chips-media/{ => coda}/imx-vdoa.h | 0
drivers/media/platform/chips-media/{ => coda}/trace.h | 2 +-
17 files changed, 28 insertions(+), 22 deletions(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index f3e6dbbbbccb..93225b546030 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -5104,7 +5104,7 @@ M: Philipp Zabel <p.zabel@pengutronix.de>
L: linux-media@vger.kernel.org
S: Maintained
F: Documentation/devicetree/bindings/media/coda.yaml
-F: drivers/media/platform/chips-media/
+F: drivers/media/platform/chips-media/coda
CODE OF CONDUCT
M: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
diff --git a/drivers/media/platform/chips-media/Kconfig b/drivers/media/platform/chips-media/Kconfig
index 57f8f8a22df8..f87a0d693df7 100644
--- a/drivers/media/platform/chips-media/Kconfig
+++ b/drivers/media/platform/chips-media/Kconfig
@@ -2,19 +2,4 @@
comment "Chips&Media media platform drivers"
-config VIDEO_CODA
- tristate "Chips&Media Coda multi-standard codec IP"
- depends on V4L_MEM2MEM_DRIVERS
- depends on VIDEO_DEV && OF && (ARCH_MXC || COMPILE_TEST)
- select SRAM
- select VIDEOBUF2_DMA_CONTIG
- select VIDEOBUF2_VMALLOC
- select V4L2_JPEG_HELPER
- select V4L2_MEM2MEM_DEV
- select GENERIC_ALLOCATOR
- help
- Coda is a range of video codec IPs that supports
- H.264, MPEG-4, and other video formats.
-
-config VIDEO_IMX_VDOA
- def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST
+source "drivers/media/platform/chips-media/coda/Kconfig"
diff --git a/drivers/media/platform/chips-media/Makefile b/drivers/media/platform/chips-media/Makefile
index bbb16425a875..5ee693f651c1 100644
--- a/drivers/media/platform/chips-media/Makefile
+++ b/drivers/media/platform/chips-media/Makefile
@@ -1,6 +1,3 @@
# SPDX-License-Identifier: GPL-2.0-only
-coda-vpu-objs := coda-common.o coda-bit.o coda-gdi.o coda-h264.o coda-mpeg2.o coda-mpeg4.o coda-jpeg.o
-
-obj-$(CONFIG_VIDEO_CODA) += coda-vpu.o
-obj-$(CONFIG_VIDEO_IMX_VDOA) += imx-vdoa.o
+obj-y += coda/
diff --git a/drivers/media/platform/chips-media/coda/Kconfig b/drivers/media/platform/chips-media/coda/Kconfig
new file mode 100644
index 000000000000..cb7b66c71380
--- /dev/null
+++ b/drivers/media/platform/chips-media/coda/Kconfig
@@ -0,0 +1,18 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+config VIDEO_CODA
+ tristate "Chips&Media Coda multi-standard codec IP"
+ depends on V4L_MEM2MEM_DRIVERS
+ depends on VIDEO_DEV && OF && (ARCH_MXC || COMPILE_TEST)
+ select SRAM
+ select VIDEOBUF2_DMA_CONTIG
+ select VIDEOBUF2_VMALLOC
+ select V4L2_JPEG_HELPER
+ select V4L2_MEM2MEM_DEV
+ select GENERIC_ALLOCATOR
+ help
+ Coda is a range of video codec IPs that supports
+ H.264, MPEG-4, and other video formats.
+
+config VIDEO_IMX_VDOA
+ def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST
diff --git a/drivers/media/platform/chips-media/coda/Makefile b/drivers/media/platform/chips-media/coda/Makefile
new file mode 100644
index 000000000000..bbb16425a875
--- /dev/null
+++ b/drivers/media/platform/chips-media/coda/Makefile
@@ -0,0 +1,6 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+coda-vpu-objs := coda-common.o coda-bit.o coda-gdi.o coda-h264.o coda-mpeg2.o coda-mpeg4.o coda-jpeg.o
+
+obj-$(CONFIG_VIDEO_CODA) += coda-vpu.o
+obj-$(CONFIG_VIDEO_IMX_VDOA) += imx-vdoa.o
diff --git a/drivers/media/platform/chips-media/coda-bit.c b/drivers/media/platform/chips-media/coda/coda-bit.c
similarity index 100%
rename from drivers/media/platform/chips-media/coda-bit.c
rename to drivers/media/platform/chips-media/coda/coda-bit.c
diff --git a/drivers/media/platform/chips-media/coda-common.c b/drivers/media/platform/chips-media/coda/coda-common.c
similarity index 100%
rename from drivers/media/platform/chips-media/coda-common.c
rename to drivers/media/platform/chips-media/coda/coda-common.c
diff --git a/drivers/media/platform/chips-media/coda-gdi.c b/drivers/media/platform/chips-media/coda/coda-gdi.c
similarity index 100%
rename from drivers/media/platform/chips-media/coda-gdi.c
rename to drivers/media/platform/chips-media/coda/coda-gdi.c
diff --git a/drivers/media/platform/chips-media/coda-h264.c b/drivers/media/platform/chips-media/coda/coda-h264.c
similarity index 100%
rename from drivers/media/platform/chips-media/coda-h264.c
rename to drivers/media/platform/chips-media/coda/coda-h264.c
diff --git a/drivers/media/platform/chips-media/coda-jpeg.c b/drivers/media/platform/chips-media/coda/coda-jpeg.c
similarity index 100%
rename from drivers/media/platform/chips-media/coda-jpeg.c
rename to drivers/media/platform/chips-media/coda/coda-jpeg.c
diff --git a/drivers/media/platform/chips-media/coda-mpeg2.c b/drivers/media/platform/chips-media/coda/coda-mpeg2.c
similarity index 100%
rename from drivers/media/platform/chips-media/coda-mpeg2.c
rename to drivers/media/platform/chips-media/coda/coda-mpeg2.c
diff --git a/drivers/media/platform/chips-media/coda-mpeg4.c b/drivers/media/platform/chips-media/coda/coda-mpeg4.c
similarity index 100%
rename from drivers/media/platform/chips-media/coda-mpeg4.c
rename to drivers/media/platform/chips-media/coda/coda-mpeg4.c
diff --git a/drivers/media/platform/chips-media/coda.h b/drivers/media/platform/chips-media/coda/coda.h
similarity index 100%
rename from drivers/media/platform/chips-media/coda.h
rename to drivers/media/platform/chips-media/coda/coda.h
diff --git a/drivers/media/platform/chips-media/coda_regs.h b/drivers/media/platform/chips-media/coda/coda_regs.h
similarity index 100%
rename from drivers/media/platform/chips-media/coda_regs.h
rename to drivers/media/platform/chips-media/coda/coda_regs.h
diff --git a/drivers/media/platform/chips-media/imx-vdoa.c b/drivers/media/platform/chips-media/coda/imx-vdoa.c
similarity index 100%
rename from drivers/media/platform/chips-media/imx-vdoa.c
rename to drivers/media/platform/chips-media/coda/imx-vdoa.c
diff --git a/drivers/media/platform/chips-media/imx-vdoa.h b/drivers/media/platform/chips-media/coda/imx-vdoa.h
similarity index 100%
rename from drivers/media/platform/chips-media/imx-vdoa.h
rename to drivers/media/platform/chips-media/coda/imx-vdoa.h
diff --git a/drivers/media/platform/chips-media/trace.h b/drivers/media/platform/chips-media/coda/trace.h
similarity index 99%
rename from drivers/media/platform/chips-media/trace.h
rename to drivers/media/platform/chips-media/coda/trace.h
index 19f98e6dafb9..abc6a01a74e9 100644
--- a/drivers/media/platform/chips-media/trace.h
+++ b/drivers/media/platform/chips-media/coda/trace.h
@@ -167,7 +167,7 @@ DEFINE_EVENT(coda_buf_class, coda_jpeg_done,
#endif /* __CODA_TRACE_H__ */
#undef TRACE_INCLUDE_PATH
-#define TRACE_INCLUDE_PATH ../../drivers/media/platform/chips-media
+#define TRACE_INCLUDE_PATH ../../drivers/media/platform/chips-media/coda
#undef TRACE_INCLUDE_FILE
#define TRACE_INCLUDE_FILE trace
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings
2023-11-08 19:29 [PATCH v14 0/8] Wave5 codec driver Sebastian Fricke
` (2 preceding siblings ...)
2023-11-08 19:29 ` [PATCH v14 3/8] media: platform: chips-media: Move Coda to separate folder Sebastian Fricke
@ 2023-11-08 19:29 ` Sebastian Fricke
2023-11-10 20:53 ` Rob Herring
2023-11-28 10:27 ` Geert Uytterhoeven
2023-11-08 19:29 ` [PATCH v14 7/8] media: chips-media: wave5: Add wave5 driver to maintainers file Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 8/8] arm64: dts: ti: k3-j721s2-main: add wave5 video encoder/decoder node Sebastian Fricke
5 siblings, 2 replies; 10+ messages in thread
From: Sebastian Fricke @ 2023-11-08 19:29 UTC (permalink / raw)
To: Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team,
Conor Dooley, Nas Chung, Fabio Estevam, Krzysztof Kozlowski,
Jackson Lee, Shawn Guo, Sascha Hauer, Hans Verkuil, Philipp Zabel,
Rob Herring
Cc: Ivan Bornyakov, Deborah Brouwer, Nicolas Dufresne, devicetree,
Robert Beckett, Sebastian Fricke, linux-arm-kernel, kernel,
linux-kernel, linux-media
From: Robert Beckett <bob.beckett@collabora.com>
Add bindings for the wave5 chips&media codec driver
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
---
.../devicetree/bindings/media/cnm,wave521c.yaml | 61 ++++++++++++++++++++++
1 file changed, 61 insertions(+)
diff --git a/Documentation/devicetree/bindings/media/cnm,wave521c.yaml b/Documentation/devicetree/bindings/media/cnm,wave521c.yaml
new file mode 100644
index 000000000000..6d5569e77b7a
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/cnm,wave521c.yaml
@@ -0,0 +1,61 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/cnm,wave521c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Chips&Media Wave 5 Series multi-standard codec IP
+
+maintainers:
+ - Nas Chung <nas.chung@chipsnmedia.com>
+ - Jackson Lee <jackson.lee@chipsnmedia.com>
+
+description:
+ The Chips&Media WAVE codec IP is a multi format video encoder/decoder
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - ti,k3-j721s2-wave521c
+ - const: cnm,wave521c
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: VCODEC clock
+
+ interrupts:
+ maxItems: 1
+
+ power-domains:
+ maxItems: 1
+
+ resets:
+ maxItems: 1
+
+ sram:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description:
+ The VPU uses the SRAM to store some of the reference data instead of
+ storing it on DMA memory. It is mainly used for the purpose of reducing
+ bandwidth.
+
+required:
+ - compatible
+ - reg
+ - clocks
+
+additionalProperties: false
+
+examples:
+ - |
+ vpu: video-codec@12345678 {
+ compatible = "ti,k3-j721s2-wave521c", "cnm,wave521c";
+ reg = <0x12345678 0x1000>;
+ clocks = <&clks 42>;
+ interrupts = <42>;
+ sram = <&sram>;
+ };
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings
2023-11-08 19:29 ` [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings Sebastian Fricke
@ 2023-11-10 20:53 ` Rob Herring
2023-11-28 10:27 ` Geert Uytterhoeven
1 sibling, 0 replies; 10+ messages in thread
From: Rob Herring @ 2023-11-10 20:53 UTC (permalink / raw)
To: Sebastian Fricke
Cc: Conor Dooley, Jackson Lee, linux-arm-kernel, Fabio Estevam,
Robert Beckett, Hans Verkuil, devicetree, kernel, Rob Herring,
Krzysztof Kozlowski, Philipp Zabel, linux-kernel, NXP Linux Team,
linux-media, Sascha Hauer, Pengutronix Kernel Team,
Nicolas Dufresne, Ivan Bornyakov, Mauro Carvalho Chehab,
Shawn Guo, Deborah Brouwer, Nas Chung
On Wed, 08 Nov 2023 20:29:25 +0100, Sebastian Fricke wrote:
> From: Robert Beckett <bob.beckett@collabora.com>
>
> Add bindings for the wave5 chips&media codec driver
>
> Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
> Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
> Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
> ---
> .../devicetree/bindings/media/cnm,wave521c.yaml | 61 ++++++++++++++++++++++
> 1 file changed, 61 insertions(+)
>
Reviewed-by: Rob Herring <robh@kernel.org>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings
2023-11-08 19:29 ` [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings Sebastian Fricke
2023-11-10 20:53 ` Rob Herring
@ 2023-11-28 10:27 ` Geert Uytterhoeven
2023-12-01 6:33 ` Nishanth Menon
1 sibling, 1 reply; 10+ messages in thread
From: Geert Uytterhoeven @ 2023-11-28 10:27 UTC (permalink / raw)
To: Sebastian Fricke
Cc: Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team,
Conor Dooley, Nas Chung, Fabio Estevam, Krzysztof Kozlowski,
Jackson Lee, Shawn Guo, Sascha Hauer, Hans Verkuil, Philipp Zabel,
Rob Herring, Ivan Bornyakov, Deborah Brouwer, Nicolas Dufresne,
devicetree, Robert Beckett, linux-arm-kernel, kernel,
linux-kernel, linux-media, Nishanth Menon, R, Vignesh,
Tero Kristo
Hi Sebastian,
CC TI K3
On Wed, Nov 8, 2023 at 8:29 PM Sebastian Fricke
<sebastian.fricke@collabora.com> wrote:
> From: Robert Beckett <bob.beckett@collabora.com>
>
> Add bindings for the wave5 chips&media codec driver
>
> Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
> Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
> Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
Thanks for your patch, which is now commit de4b9f7e371a5384
("dt-bindings: media: wave5: add yaml devicetree bindings")
in media/master.
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/cnm,wave521c.yaml
> @@ -0,0 +1,61 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/media/cnm,wave521c.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Chips&Media Wave 5 Series multi-standard codec IP
> +
> +maintainers:
> + - Nas Chung <nas.chung@chipsnmedia.com>
> + - Jackson Lee <jackson.lee@chipsnmedia.com>
> +
> +description:
> + The Chips&Media WAVE codec IP is a multi format video encoder/decoder
> +
> +properties:
> + compatible:
> + items:
> + - enum:
> + - ti,k3-j721s2-wave521c
This is the only compatible value defined which contains both "k3"
and "j72*". I assume the "k3-" part should be dropped?
> + - const: cnm,wave521c
> +
This also applies to the driver added in commit 9707a6254a8a6b97
("media: chips-media: wave5: Add the v4l2 layer") in media/master.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings
2023-11-28 10:27 ` Geert Uytterhoeven
@ 2023-12-01 6:33 ` Nishanth Menon
0 siblings, 0 replies; 10+ messages in thread
From: Nishanth Menon @ 2023-12-01 6:33 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Sebastian Fricke, Mauro Carvalho Chehab, NXP Linux Team,
Pengutronix Kernel Team, Conor Dooley, Nas Chung, Fabio Estevam,
Krzysztof Kozlowski, Jackson Lee, Shawn Guo, Sascha Hauer,
Hans Verkuil, Philipp Zabel, Rob Herring, Ivan Bornyakov,
Deborah Brouwer, Nicolas Dufresne, devicetree, Robert Beckett,
linux-arm-kernel, kernel, linux-kernel, linux-media, R, Vignesh,
Tero Kristo
On 11:27-20231128, Geert Uytterhoeven wrote:
> Hi Sebastian,
>
> CC TI K3
Thanks for looping us in Geert.
[...]
> > +
> > +properties:
> > + compatible:
> > + items:
> > + - enum:
> > + - ti,k3-j721s2-wave521c
>
> This is the only compatible value defined which contains both "k3"
> and "j72*". I assume the "k3-" part should be dropped?
Correct - we have not been using architecture prefix such as k3- in
compatibles for any other peripheral and that lines up with DT spec[1]
$ git grep ti, Documentation/|grep compatible|grep yaml|cut -d ':' -f2|grep k3-
is empty.
I have for asked this to be cleared up[2] before I can pick the dts changes
corresponding to the binding.. I will wait for the bindings to hit linus
master prior to looking at the dts changes.
[1] https://github.com/devicetree-org/devicetree-specification/releases/tag/v0.4
[2] https://lore.kernel.org/all/20231201062427.6fw5gn2zgkkurv4q@shadow/
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v14 7/8] media: chips-media: wave5: Add wave5 driver to maintainers file
2023-11-08 19:29 [PATCH v14 0/8] Wave5 codec driver Sebastian Fricke
` (3 preceding siblings ...)
2023-11-08 19:29 ` [PATCH v14 6/8] dt-bindings: media: wave5: add yaml devicetree bindings Sebastian Fricke
@ 2023-11-08 19:29 ` Sebastian Fricke
2023-11-08 19:29 ` [PATCH v14 8/8] arm64: dts: ti: k3-j721s2-main: add wave5 video encoder/decoder node Sebastian Fricke
5 siblings, 0 replies; 10+ messages in thread
From: Sebastian Fricke @ 2023-11-08 19:29 UTC (permalink / raw)
To: Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team,
Conor Dooley, Nas Chung, Fabio Estevam, Krzysztof Kozlowski,
Jackson Lee, Shawn Guo, Sascha Hauer, Hans Verkuil, Philipp Zabel,
Rob Herring
Cc: Ivan Bornyakov, Deborah Brouwer, Nicolas Dufresne, devicetree,
Robert Beckett, Sebastian Fricke, linux-arm-kernel, kernel,
linux-kernel, linux-media
From: Robert Beckett <bob.beckett@collabora.com>
Add the Chips&Media wave5 encoder/decoder driver to the maintainers file
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
---
MAINTAINERS | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 93225b546030..50758d1fcbf2 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -23234,6 +23234,14 @@ F: include/linux/watchdog.h
F: include/trace/events/watchdog.h
F: include/uapi/linux/watchdog.h
+WAVE5 VPU CODEC DRIVER
+M: Nas Chung <nas.chung@chipsnmedia.com>
+M: Jackson Lee <jackson.lee@chipsnmedia.com>
+L: linux-media@vger.kernel.org
+S: Maintained
+F: Documentation/devicetree/bindings/media/cnm,wave5.yaml
+F: drivers/media/platform/chips-media/wave5/
+
WHISKEYCOVE PMIC GPIO DRIVER
M: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
L: linux-gpio@vger.kernel.org
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v14 8/8] arm64: dts: ti: k3-j721s2-main: add wave5 video encoder/decoder node
2023-11-08 19:29 [PATCH v14 0/8] Wave5 codec driver Sebastian Fricke
` (4 preceding siblings ...)
2023-11-08 19:29 ` [PATCH v14 7/8] media: chips-media: wave5: Add wave5 driver to maintainers file Sebastian Fricke
@ 2023-11-08 19:29 ` Sebastian Fricke
5 siblings, 0 replies; 10+ messages in thread
From: Sebastian Fricke @ 2023-11-08 19:29 UTC (permalink / raw)
To: Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team,
Conor Dooley, Nas Chung, Fabio Estevam, Krzysztof Kozlowski,
Jackson Lee, Shawn Guo, Sascha Hauer, Hans Verkuil, Philipp Zabel,
Rob Herring
Cc: Ivan Bornyakov, Deborah Brouwer, Nicolas Dufresne, devicetree,
Robert Beckett, Sebastian Fricke, linux-arm-kernel, kernel,
linux-kernel, linux-media
From: Darren Etheridge <detheridge@ti.com>
Add the Chips and Media wave521cl video decoder/encoder node on J721S2.
This functional block also requires an SRAM buffer as a bandwidth saving
temporary store so we need to add a carve out of 126K for this as
specified in the documentation.
Signed-off-by: Darren Etheridge <detheridge@ti.com>
---
arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi b/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
index 084f8f5b6699..70ed17c4c81b 100644
--- a/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
@@ -28,6 +28,10 @@ atf-sram@0 {
reg = <0x0 0x20000>;
};
+ vpu_sram: vpu-sram@20000 {
+ reg = <0x20000 0x1f800>;
+ };
+
tifs-sram@1f0000 {
reg = <0x1f0000 0x10000>;
};
@@ -716,6 +720,16 @@ main_i2c6: i2c@2060000 {
status = "disabled";
};
+ vpu: video-codec@4210000 {
+ compatible = "ti,k3-j721s2-wave521c", "cnm,wave521c";
+ reg = <0x00 0x4210000 0x00 0x10000>;
+ interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&k3_clks 179 2>;
+ clock-names = "vcodec";
+ power-domains = <&k3_pds 179 TI_SCI_PD_EXCLUSIVE>;
+ sram = <&vpu_sram>;
+ };
+
main_sdhci0: mmc@4f80000 {
compatible = "ti,j721e-sdhci-8bit";
reg = <0x00 0x04f80000 0x00 0x1000>,
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 10+ messages in thread