All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/2] Memory-to-memory media controller topology
@ 2018-06-12 10:48 Ezequiel Garcia
  2018-06-12 10:48 ` [RFC 1/2] media: add helpers for memory-to-memory media controller Ezequiel Garcia
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Ezequiel Garcia @ 2018-06-12 10:48 UTC (permalink / raw)
  To: linux-media; +Cc: Hans Verkuil, Laurent Pinchart, kernel, Ezequiel Garcia

As discussed on IRC, memory-to-memory need to be modeled
properly in order to be supported by the media controller
framework, and thus to support the Request API.

This RFC is a first draft on the memory-to-memory
media controller topology.

The topology looks like this:

Device topology
- entity 1: input (1 pad, 1 link)
            type Node subtype Unknown flags 0
	pad0: Source
		-> "proc":1 [ENABLED,IMMUTABLE]

- entity 3: proc (2 pads, 2 links)
            type Node subtype Unknown flags 0
	pad0: Source
		-> "output":0 [ENABLED,IMMUTABLE]
	pad1: Sink
		<- "input":0 [ENABLED,IMMUTABLE]

- entity 6: output (1 pad, 1 link)
            type Node subtype Unknown flags 0
	pad0: Sink
		<- "proc":0 [ENABLED,IMMUTABLE]

The first commit introduces a register/unregister API,
that creates/destroys all the entities and pads needed,
and links them.

The second commit uses this API to support the vim2m driver.

Notes
-----

* A new device node type is introduced VFL_TYPE_MEM2MEM,
  this is mostly done so the video4linux core doesn't
  try to register other media controller entities.

* Also, a new media entity type is introduced. Memory-to-memory
  devices have a multi-entity description and so can't
  be simply embedded in other structs, or cast from other structs.

Ezequiel Garcia (1):
  media: add helpers for memory-to-memory media controller

Hans Verkuil (1):
  vim2m: add media device

 drivers/media/platform/vim2m.c         |  41 ++++++-
 drivers/media/v4l2-core/v4l2-dev.c     |  23 ++--
 drivers/media/v4l2-core/v4l2-mem2mem.c | 157 +++++++++++++++++++++++++
 include/media/media-entity.h           |   4 +
 include/media/v4l2-dev.h               |   2 +
 include/media/v4l2-mem2mem.h           |   5 +
 include/uapi/linux/media.h             |   2 +
 7 files changed, 222 insertions(+), 12 deletions(-)

-- 
2.17.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-06-20 19:25 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-12 10:48 [RFC 0/2] Memory-to-memory media controller topology Ezequiel Garcia
2018-06-12 10:48 ` [RFC 1/2] media: add helpers for memory-to-memory media controller Ezequiel Garcia
2018-06-15  9:24   ` Hans Verkuil
2018-06-15 16:22     ` Ezequiel Garcia
2018-06-18 10:18       ` Hans Verkuil
2018-06-12 10:48 ` [RFC 2/2] vim2m: add media device Ezequiel Garcia
2018-06-12 19:44   ` emil.velikov
2018-06-15 20:01     ` Ezequiel Garcia
2018-06-12 14:42 ` [RFC 0/2] Memory-to-memory media controller topology Nicolas Dufresne
2018-06-15 20:05   ` Ezequiel Garcia
2018-06-17  0:31     ` Nicolas Dufresne
2018-06-20 19:25       ` Ezequiel Garcia
2018-06-15  8:59 ` Hans Verkuil
2018-06-15 12:53   ` Ezequiel Garcia

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.