From: sakari.ailus@iki.fi
To: Yong Zhi <yong.zhi@intel.com>
Cc: linux-media@vger.kernel.org, sakari.ailus@linux.intel.com,
tfiga@chromium.org, rajmohan.mani@intel.com,
tuukka.toivonen@intel.com, jerry.w.hu@intel.com,
tian.shu.qiu@intel.com, laurent.pinchart@ideasonboard.com,
hans.verkuil@cisco.com, mchehab@kernel.org, bingbu.cao@intel.com,
jian.xu.zheng@intel.com
Subject: Re: [PATCH v8 00/17] Intel IPU3 ImgU patchset
Date: Mon, 10 Dec 2018 23:07:45 +0200 [thread overview]
Message-ID: <20181210210745.3nwppqawxg5vl23q@valkosipuli.retiisi.org.uk> (raw)
In-Reply-To: <1544144622-29791-1-git-send-email-yong.zhi@intel.com>
Hi Yong, others,
On Thu, Dec 06, 2018 at 07:03:25PM -0600, Yong Zhi wrote:
> Hi,
>
> This series adds support for the Intel IPU3 (Image Processing Unit)
> ImgU which is essentially a modern memory-to-memory ISP. It implements
> raw Bayer to YUV image format conversion as well as a large number of
> other pixel processing algorithms for improving the image quality.
>
> Meta data formats are defined for image statistics (3A, i.e. automatic
> white balance, exposure and focus, histogram and local area contrast
> enhancement) as well as for the pixel processing algorithm parameters.
> The documentation for these formats is currently not included in the
> patchset but will be added in a future version of this set.
>
> The algorithm parameters need to be considered specific to a given frame
> and typically a large number of these parameters change on frame to frame
> basis. Additionally, the parameters are highly structured (and not a flat
> space of independent configuration primitives). They also reflect the
> data structures used by the firmware and the hardware. On top of that,
> the algorithms require highly specialized user space to make meaningful
> use of them. For these reasons it has been chosen video buffers to pass
> the parameters to the device.
>
> On individual patches:
>
> The heart of ImgU is the CSS, or Camera Subsystem, which contains the
> image processors and HW accelerators.
>
> The 3A statistics and other firmware parameter computation related
> functions are implemented in patch 8.
>
> All IPU3 pipeline default settings can be found in patch 7.
>
> To access DDR via ImgU's own memory space, IPU3 is also equipped with
> its own MMU unit, the driver is implemented in patch 3.
>
> Patch 4 uses above driver for DMA mapping operation.
>
> The communication between IPU3 firmware and driver is implemented with circular
> queues in patch 5.
>
> Patch 6 provide some utility functions and manage IPU3 fw download and
> install.
>
> The firmware which is called ipu3-fw.bin can be downloaded from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
> (commit 2c27b0cb02f18c022d8378e0e1abaf8b7ae8188f)
>
> Firmware ABI is defined in patches 1 and 2.
>
> Patches 9 and 10 are of the same file, the former contains all h/w programming
> related code, the latter implements interface functions for access fw & hw
> capabilities.
Patches 7 and 9 don't seem to have made it to the list --- the 7th patch is
big but no idea why the 9th is missing. They're here:
<URL:https://git.linuxtv.org/sailus/media_tree.git/commit/?h=ipu3-v8-2&id=97c16994434f9a5cb970a5edda8adbbaff7d3de1>
<URL:https://git.linuxtv.org/sailus/media_tree.git/commit/?h=ipu3-v8-2&id=9bc6aa1b0f31050dcb16894e5ec66c547f8d2a06>
>
> Patch 11 implements a v4l2 media framework driver.
>
> Patch 12 represents the top level that glues all of the other components together,
> passing arguments between the components.
>
> Patch 14 is a recent effort to extend v6 for advanced camera features like
> Continuous View Finder (CVF) and Snapshot During Video(SDV) support.
>
> The whole series has a dependency on Sakari's work:
>
> <URL:https://git.linuxtv.org/sailus/media_tree.git/log/?h=meta-output>
>
> Patches not to be merged with staging:
>
> Patch 15 Add v4l IPU3 meta formats.
> Patch 16 Reserve v4l2 controls for IPU3 ImgU driver.
> Patch 17 Documentation of ImgU driver.
>
> Link to user space implementation:
>
> git clone https://chromium.googlesource.com/chromiumos/platform/arc-camera
>
> ImgU media topology print:
>
> # media-ctl -d /dev/media0 -p
> Media controller API version 4.20.0
>
> Media device information
> ------------------------
> driver ipu3-imgu
> model ipu3-imgu
> serial
> bus info PCI:0000:00:05.0
> hw revision 0x80862015
> driver version 4.20.0
>
> Device topology
> - entity 1: ipu3-imgu 0 (5 pads, 5 links)
> type V4L2 subdev subtype Unknown flags 0
> device node name /dev/v4l-subdev0
> pad0: Sink
> [fmt:FIXED/1920x1080 field:none colorspace:raw
> crop:(0,0)/1920x1080
> compose:(0,0)/1920x1080]
> <- "ipu3-imgu 0 input":0 []
> pad1: Sink
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> <- "ipu3-imgu 0 parameters":0 []
> pad2: Source
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> -> "ipu3-imgu 0 output":0 []
> pad3: Source
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> -> "ipu3-imgu 0 viewfinder":0 []
> pad4: Source
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> -> "ipu3-imgu 0 3a stat":0 []
>
> - entity 7: ipu3-imgu 0 input (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video0
> pad0: Source
> -> "ipu3-imgu 0":0 []
>
> - entity 13: ipu3-imgu 0 parameters (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video1
> pad0: Source
> -> "ipu3-imgu 0":1 []
>
> - entity 19: ipu3-imgu 0 output (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video2
> pad0: Sink
> <- "ipu3-imgu 0":2 []
>
> - entity 25: ipu3-imgu 0 viewfinder (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video3
> pad0: Sink
> <- "ipu3-imgu 0":3 []
>
> - entity 31: ipu3-imgu 0 3a stat (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video4
> pad0: Sink
> <- "ipu3-imgu 0":4 []
>
> - entity 37: ipu3-imgu 1 (5 pads, 5 links)
> type V4L2 subdev subtype Unknown flags 0
> device node name /dev/v4l-subdev1
> pad0: Sink
> [fmt:FIXED/1920x1080 field:none colorspace:raw
> crop:(0,0)/1920x1080
> compose:(0,0)/1920x1080]
> <- "ipu3-imgu 1 input":0 []
> pad1: Sink
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> <- "ipu3-imgu 1 parameters":0 []
> pad2: Source
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> -> "ipu3-imgu 1 output":0 []
> pad3: Source
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> -> "ipu3-imgu 1 viewfinder":0 []
> pad4: Source
> [fmt:FIXED/1920x1080 field:none colorspace:raw]
> -> "ipu3-imgu 1 3a stat":0 []
>
> - entity 43: ipu3-imgu 1 input (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video5
> pad0: Source
> -> "ipu3-imgu 1":0 []
>
> - entity 49: ipu3-imgu 1 parameters (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video6
> pad0: Source
> -> "ipu3-imgu 1":1 []
>
> - entity 55: ipu3-imgu 1 output (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video7
> pad0: Sink
> <- "ipu3-imgu 1":2 []
>
> - entity 61: ipu3-imgu 1 viewfinder (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video8
> pad0: Sink
> <- "ipu3-imgu 1":3 []
>
> - entity 67: ipu3-imgu 1 3a stat (1 pad, 1 link)
> type Node subtype V4L flags 0
> device node name /dev/video9
> pad0: Sink
> <- "ipu3-imgu 1":4 []
>
> v4l2-compliance utility is built with Sakari's patches for meta data
> output support(rebased):
>
> <URL:https://patchwork.linuxtv.org/patch/43370/>
> <URL:https://patchwork.linuxtv.org/patch/43369/>
>
> The test (v4l2-compliance -m 0) results are the same as v7, so the output are
> omitted here.
>
> Note:
>
> 1. Link pad flag of video nodes (i.e. ipu3-imgu 0 output) need to be enabled
> prior to the test.
> 2. Stream tests are not performed since it requires pre-configuration for each case.
>
> ===========
> = history =
> ===========
>
> version 8:
>
> 1. ipu3-abi.h
> - Replace all __attribute__((aligned(n))) wth __aligned(n).
> - Replace all __reserved to reserved.
>
> 2. ipu3-v4l2.c
> - Create each pipe followed by its video nodes to make device topology
> easier to read.
> - Update ipu3_subdev_open() to use default values to initialize pad config's
> try_fmt, similarly add default compose rect for pad config's try_compose.
> - Change ipu3-imgu bus format code to MEDIA_BUS_FMT_FIXED as it's not
> configurable.
> - Use static allocation for struct imgu_v4l2_subdev.subdev_pads.
> - Remove EXPORT_SYMBOL_GPL() which is of no use after v5.
> - Prefix public api with imgu, i.e. change ipu3_v4l2_register() to
> imgu_v4l2_register().
>
> 3. ipu3-css-pool.c, ipu3-css-pool.h
> - Simplify the logic for ipu3_css_pool_get().
> - Use u32 instead of long at ipu3_css_pool.last.
> - Replace ipu3_css_pool.entry[].framenum with a flag to mark whether the entry
> has valid data.
>
> 4. ipu3-css-params.c
> - Address kernel panic on css ouput system error path.
>
> 5. Misc style related changes:
> - Remove unused member of struct imgu_video_device.
> - Use ipu3_uapi_stats_3a to compute the CSS_QUEUE_STAT_3A_BUF_SIZE.
> - Change video4linux2 to Video4Linux2 in Kconfig.
> - Replace strlcpy() with strscpy() at all places.
>
> 6. uAPI and documentation.
> - Remove acronyms from intel-ipu3.h
> - Renaming all __reserved fields to reserved.
> - Fix typo such as _plain_color.
> - Direct use struct for meta_data.
> - Fix unclear or incorrect data type, range in the description.
>
> 7. Move driver code to /driver/staging/media/ipu3/
> - Temporarily move intel-ipu3.h to ipu3/include.
> - Temporarily add V4L2_META_FMT_IPU3_PARAMS and V4L2_META_FMT_IPU3_STAT_3A
> to intel-ipu3.h for staging build.
>
> 8. Regroup and re-order the patchset.
> - Make uAPI intel-ipu3.h as separate patch.
> - Add single patch to reserve v4l2 controls for ImgU driver.
>
> version 7:
>
> 1. Add driver and uAPI documentation.
>
> Update based on v1 review from Tomasz, Hans, Sokari and Mauro:
> https://patchwork.kernel.org/patch/10465663/
> https://patchwork.kernel.org/patch/10465665/
>
> 2. Add dual pipe support which includes:
> - Extend current IMGU device to contain 2 subdevs and two groups of video nodes.
> - Add a v4l2 ctrl to allow user to specify the mode(video or still) of the pipe.
>
> 3. Kconfig
> - Restrict build for X86 arch to fix build error for ia64/sparc.
> (fatal error: asm/set_memory.h: No such file or directory)
>
> 4. ipu3-abi.h
> - Change __u32 to u32.
> - Use generic __attribute__((aligned(x))) format. (Mauro/Hans)
> - Split abi to 2 patches, one for register defines, enums, the other for structs. (Tomasz)
>
> 5. ipu3-mmu.c
> - Fix ipu3-mmu/dmamap exit functions. (Tomasz)
> (Port from https://chromium-review.googlesource.com/1084522)
> - Use free_page instead of kfree. (Tomasz)
> - document struct ipu3_mmu_info.
> - Fix copyright information.
>
> 6. ipu3-dmamap.c (Tomasz)
> - Update APIs based on v6 review.
> - Replace sizeof(struct page *) with sizeof(*pages).
> - Remove un-needed (WARN_ON(!dev)) inside void *ipu3_dmamap_alloc().
>
> 7. ipu3.c (Tomasz)
> - imgu_video_nodes_init()
> Fix the missing call to ipu3_v4l2_unregister() in the error path of
> imgu_dummybufs_preallocate().
> - imgu_queue_buffers()
> Evaluate loop condition explicitly for code clarity and simplicity.
> FW requires all output buffers to be queued at start, so adjust the order of
> buffer queuing accordingly. (bufix by Tianshu)
> - imgu_isr_threaded()
> Fix interrupt handler return value.
> (Port from https://chromium-review.googlesource.com/1088539)
> - Add back the buf_drain_wq from ("avoid sleep in wait_event condition")'
> (Port from https://chromium-review.googlesource.com/875420)
>
> 8. ipu3-v4l2.c
> - ipu3_v4l2_register(). (Tomasz)
> Split media initialization and registration, also change media device
> register/un-register order.
>
> - Fix v4l2-compliance fail on sub-devicef for VIDIOC_CREATE_BUFS and
> VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT.
>
> 9. ipu3-css.c, ipu3-css.h, ipu3-css-fw.h, ipu3-abi.h
> - Convert macros in structs to enums. (Tomasz)
>
> 10. ipu3-css-pool.c, ipu3-css-pool.h, ipu3.c
> - Document the structs. (Hans/Maruo)
>
> 11. ipu3-css-params.c
> - Fixup for noise reduction parameters processing. (bug fixing)
>
> version 6:
>
> - intel-ipu3.h uAPI
> Move out the definitions not used by user space. (suggested by Sakari)
> - ipu3-abi.h, ipu3-css-fw.h
> Clean up the header files.
> Remove enum type from ABI structs.
> - ipu3-css.h and ipu3-css.c
> Disable DVS support and remove related code.
> - ipu3-v4l2.c
> Fixes of v4l2_compliance test fails on ImgU sub-dev.
> - ipu3-css-params.c
> Refactor awb/awb_fr/af_ops_calc() functions. (Sakari)
> - Build mmu and dmamap driver as part of ImgU ko module; (Sakari)
> - Add "ipu3-imgu" prefix to media entity names; (Sakari)
> - Fix indentation and white space; (Sakari)
> - Rebase to kernel v4.16;
> - Use SPDX license identifiers in all drivers; (Sakari)
> - Internal fix and performance improvements such as:
> Stop fw gracefully during stream off.
> Enable irq only after start streaming to avoid unexpected interrupt.
> Use spinlock to protect IPU3_CSS_QUEUES access.
> Return NULL when dequeuing buffer before streaming.
>
> TODOs:
> - Documentation on ImgU driver programming interface to configure and enable
> ISP HW, which will include details on complete V4L2 Kernel driver interface
> and IO-Control parameters, except for the ISP internal algorithm and its
> parameters (which is Intel proprietary IP).
>
> version 5:
> - ipu3-css-pool.c/ipu3_css_pool_check().
> add handling of the framenum wrap around case in ipu3_css_pool_check().
> - ipu3.c, ipu3-v4l2.c, ipu3.h
> merge struct ipu3_mem2mem2_device into imgu_device and update the code
> accordingly. (Suggested by Sakari)
> - ipu3-mmu.c driver:
> use __get_free_page() for page-aligned allocations (Tomasz).
> optimize tlb invalidation by calling them at the end of map/unmap. (Tomasz).
> remove dependency on iommu. (Sakari)
> introduce few new functions from iommu.c.
> - ipu3-dmamap.c driver
> call mmu directly without IOMMU_SUPPORT (Sakari)
> update dmamap APIs. (Suggested by Tomasz)
> - ipu3_v4l2.c
> move g/s_selection callback to V4l2 sub-device (Sakari)
> remove colon from ImgU sub-device name. (Sakari)
> - ipu3-css-params.c
> fix indentation, 0-day scan warnings etc.
> - ipu3-css.c
> fix warning about NULL comparison. (Sakari)
> - intel-ipu3.h:
> remove redundant IPU3_ALIGN attribute (Sakari).
> fix up un-needed fields in struct ipu3_uapi_params (Sakari)
> re-order this to be 2nd in the patch set.
> - Makefile: remove Copyright header. (Sakari)
> - Internal fix:
> optimize shot-to-shot performance.
> update default white balance gains defined in ipu3-tables.c
>
> TODOs:
>
> - Documentation on ImgU driver programming interface to configure and enable
> ISP HW, which will include details on complete V4L2 Kernel driver interface
> and IO-Control parameters, except for the ISP internal algorithm and its
> parameters (which is Intel proprietary IP).
>
> - Review ipu3_css_pool_* group APIs usage.
>
> version 4:
> - Used V4L2_BUF_TYPE_META_OUTPUT for:
> - V4L2_META_FMT_IPU3_STAT_PARAMS
>
> - Used V4L2_BUF_TYPE_META_CAPTURE for:
> - V4L2_META_FMT_IPU3_STAT_3A
> - V4L2_META_FMT_IPU3_STAT_DVS
> - V4L2_META_FMT_IPU3_STAT_LACE
> - Supported v4l2 MPLANE format on video nodes.
> - ipu3-dmamap.c: Removed dma ops and dependencies on IOMMU_DMA lib.
> - ipu3-mmu.c: Restructured the driver.
> - intel-ipu3.h: Added __padding qualifier for uapi definitions.
> - Internal fix: power and performance related issues.
> - Fixed v4l2-compliance test.
> - Fixed build failure for x86 with 32bit config.
>
> version 3:
> - ipu3-mmu.c and ipu3-dmamap.c:
> Tomasz Figa reworked both drivers and updated related files.
> - ipu2-abi.h:
> update imgu_abi_binary_info ABI to support latest ipu3-fw.bin.
> use __packed qualifier on structs suggested by Sakari Ailus.
> - ipu3-css-fw.c/ipu3-css-fw.h: following fix were suggested by Tomasz Figa:
> remove pointer type in firmware blob structs.
> fix binary_header array in struct imgu_fw_header.
> fix calling ipu3_css_fw_show_binary() before proper checking.
> fix logic error for valid length checking of blob name.
> - ipu3-css-params.c/ipu3_css_scaler_get_exp():
> use lib helper suggested by Andy Shevchenko.
> - ipu3-v4l2.c/ipu3_videoc_querycap():
> fill device_caps fix suggested by Hans Verkuil.
> add VB2_DMABUF suggested by Tomasz Figa.
> - ipu3-css.c: increase IMGU freq from 300MHZ to 450MHZ (internal fix)
> - ipu3.c: use vb2_dma_sg_memop for the time being(internal fix).
>
> version 2:
> This version cherry-picked firmware ABI change and other
> fix in order to bring the code up-to-date with our internal release.
>
> I will go over the review comments in v1 and address them in v3 and
> future update.
>
> version 1:
> - Initial submission
>
> Cao,Bing Bu (2):
> media: staging/intel-ipu3: Add dual pipe support
> media: v4l2-ctrls: Reserve controls for IPU3 ImgU
>
> Rajmohan Mani (1):
> doc-rst: Add Intel IPU3 documentation
>
> Tomasz Figa (2):
> media: staging/intel-ipu3: mmu: Implement driver
> media: staging/intel-ipu3: Implement DMA mapping functions
>
> Yong Zhi (12):
> media: staging/intel-ipu3: abi: Add register definitions and enum
> media: staging/intel-ipu3: abi: Add structs
> media: staging/intel-ipu3: css: Add dma buff pool utility functions
> media: staging/intel-ipu3: css: Add support for firmware management
> media: staging/intel-ipu3: css: Add static settings for image pipeline
> media: staging/intel-ipu3: css: Compute and program ccs
> media: staging/intel-ipu3: css: Initialize css hardware
> media: staging/intel-ipu3: Add css pipeline programming
> media: staging/intel-ipu3: Add v4l2 driver based on media framework
> media: staging/intel-ipu3: Add imgu top level pci device driver
> media: staging/intel-ipu3: Add Intel IPU3 meta data uAPI
> media: v4l: Add Intel IPU3 meta buffer formats
>
> Documentation/media/uapi/v4l/meta-formats.rst | 1 +
> .../media/uapi/v4l/pixfmt-meta-intel-ipu3.rst | 178 +
> Documentation/media/v4l-drivers/index.rst | 1 +
> Documentation/media/v4l-drivers/ipu3.rst | 326 +
> drivers/media/v4l2-core/v4l2-ioctl.c | 2 +
> drivers/staging/media/Kconfig | 2 +
> drivers/staging/media/Makefile | 1 +
> drivers/staging/media/ipu3/Kconfig | 14 +
> drivers/staging/media/ipu3/Makefile | 11 +
> drivers/staging/media/ipu3/TODO | 23 +
> drivers/staging/media/ipu3/include/intel-ipu3.h | 2785 ++++++
> drivers/staging/media/ipu3/ipu3-abi.h | 2011 ++++
> drivers/staging/media/ipu3/ipu3-css-fw.c | 265 +
> drivers/staging/media/ipu3/ipu3-css-fw.h | 188 +
> drivers/staging/media/ipu3/ipu3-css-params.c | 2943 ++++++
> drivers/staging/media/ipu3/ipu3-css-params.h | 28 +
> drivers/staging/media/ipu3/ipu3-css-pool.c | 100 +
> drivers/staging/media/ipu3/ipu3-css-pool.h | 55 +
> drivers/staging/media/ipu3/ipu3-css.c | 2391 +++++
> drivers/staging/media/ipu3/ipu3-css.h | 213 +
> drivers/staging/media/ipu3/ipu3-dmamap.c | 270 +
> drivers/staging/media/ipu3/ipu3-dmamap.h | 22 +
> drivers/staging/media/ipu3/ipu3-mmu.c | 561 ++
> drivers/staging/media/ipu3/ipu3-mmu.h | 35 +
> drivers/staging/media/ipu3/ipu3-tables.c | 9609 ++++++++++++++++++++
> drivers/staging/media/ipu3/ipu3-tables.h | 66 +
> drivers/staging/media/ipu3/ipu3-v4l2.c | 1419 +++
> drivers/staging/media/ipu3/ipu3.c | 830 ++
> drivers/staging/media/ipu3/ipu3.h | 168 +
> include/uapi/linux/v4l2-controls.h | 4 +
> include/uapi/linux/videodev2.h | 4 +
> 31 files changed, 24526 insertions(+)
> create mode 100644 Documentation/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst
> create mode 100644 Documentation/media/v4l-drivers/ipu3.rst
> create mode 100644 drivers/staging/media/ipu3/Kconfig
> create mode 100644 drivers/staging/media/ipu3/Makefile
> create mode 100644 drivers/staging/media/ipu3/TODO
> create mode 100644 drivers/staging/media/ipu3/include/intel-ipu3.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-abi.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-css-fw.c
> create mode 100644 drivers/staging/media/ipu3/ipu3-css-fw.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-css-params.c
> create mode 100644 drivers/staging/media/ipu3/ipu3-css-params.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-css-pool.c
> create mode 100644 drivers/staging/media/ipu3/ipu3-css-pool.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-css.c
> create mode 100644 drivers/staging/media/ipu3/ipu3-css.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-dmamap.c
> create mode 100644 drivers/staging/media/ipu3/ipu3-dmamap.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-mmu.c
> create mode 100644 drivers/staging/media/ipu3/ipu3-mmu.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-tables.c
> create mode 100644 drivers/staging/media/ipu3/ipu3-tables.h
> create mode 100644 drivers/staging/media/ipu3/ipu3-v4l2.c
> create mode 100644 drivers/staging/media/ipu3/ipu3.c
> create mode 100644 drivers/staging/media/ipu3/ipu3.h
>
> --
> 2.7.4
>
--
Sakari Ailus
prev parent reply other threads:[~2018-12-10 21:07 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-07 1:03 [PATCH v8 00/17] Intel IPU3 ImgU patchset Yong Zhi
2018-12-07 1:03 ` [PATCH v8 01/17] media: staging/intel-ipu3: abi: Add register definitions and enum Yong Zhi
2018-12-07 1:03 ` [PATCH v8 02/17] media: staging/intel-ipu3: abi: Add structs Yong Zhi
2018-12-07 1:03 ` [PATCH v8 03/17] media: staging/intel-ipu3: mmu: Implement driver Yong Zhi
2018-12-07 1:03 ` [PATCH v8 04/17] media: staging/intel-ipu3: Implement DMA mapping functions Yong Zhi
2018-12-07 1:03 ` [PATCH v8 05/17] media: staging/intel-ipu3: css: Add dma buff pool utility functions Yong Zhi
2018-12-07 1:03 ` [PATCH v8 06/17] media: staging/intel-ipu3: css: Add support for firmware management Yong Zhi
2018-12-07 1:03 ` [PATCH v8 08/17] media: staging/intel-ipu3: css: Compute and program ccs Yong Zhi
2018-12-07 1:03 ` [PATCH v8 10/17] media: staging/intel-ipu3: Add css pipeline programming Yong Zhi
2018-12-07 1:03 ` [PATCH v8 11/17] media: staging/intel-ipu3: Add v4l2 driver based on media framework Yong Zhi
2018-12-07 1:03 ` [PATCH v8 12/17] media: staging/intel-ipu3: Add imgu top level pci device driver Yong Zhi
2018-12-07 1:03 ` [PATCH v8 13/17] media: staging/intel-ipu3: Add Intel IPU3 meta data uAPI Yong Zhi
2018-12-07 1:03 ` [PATCH v8 14/17] media: staging/intel-ipu3: Add dual pipe support Yong Zhi
2018-12-07 1:03 ` [PATCH v8 15/17] media: v4l: Add Intel IPU3 meta buffer formats Yong Zhi
2018-12-11 12:58 ` Laurent Pinchart
2019-01-10 12:29 ` Laurent Pinchart
2019-01-10 18:35 ` Zhi, Yong
2019-01-22 21:22 ` Laurent Pinchart
2019-01-22 21:46 ` Zhi, Yong
2018-12-07 1:03 ` [PATCH v8 16/17] media: v4l2-ctrls: Reserve controls for IPU3 ImgU Yong Zhi
2018-12-07 1:03 ` [PATCH v8 17/17] doc-rst: Add Intel IPU3 documentation Yong Zhi
2018-12-09 22:33 ` Sakari Ailus
2018-12-11 13:04 ` Laurent Pinchart
2018-12-14 11:02 ` Mauro Carvalho Chehab
2018-12-10 21:07 ` sakari.ailus [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181210210745.3nwppqawxg5vl23q@valkosipuli.retiisi.org.uk \
--to=sakari.ailus@iki.fi \
--cc=bingbu.cao@intel.com \
--cc=hans.verkuil@cisco.com \
--cc=jerry.w.hu@intel.com \
--cc=jian.xu.zheng@intel.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=rajmohan.mani@intel.com \
--cc=sakari.ailus@linux.intel.com \
--cc=tfiga@chromium.org \
--cc=tian.shu.qiu@intel.com \
--cc=tuukka.toivonen@intel.com \
--cc=yong.zhi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).