Re: [PATCHv2 0/5] cobalt: new HDMI Rx/Tx PCIe driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Oops, I forgot to mention that patches 1-4 are unchanged from v1. Also,
if there are no comments about this driver, then I intend to make a pull
request on Monday.

Regards,

	Hans


On 05/13/15 09:22, Hans Verkuil wrote:
> From: Hans Verkuil <hans.verkuil@xxxxxxxxx>
> 
> Changes since v1:
> 
> - Fixed a lockdep bug in the alsa driver
> - Moved the DMA descriptor allocation/freeing to buf_init and buf_cleanup,
>   which is where it belongs.
> - Rebased to the latest media_tree master.
> 
> Hi all,
> 
> This driver is for the Cisco Cobalt card, which is a PCIe device with four
> HDMI inputs (adv7604) and optionally one fifth input (adv7842) or one output
> (adv7511).
> 
> This board is not for sale (sadly) but it is used internally for testing and
> prototyping. Many of the HDMI/Digital Video related features that I have added
> to V4L2 over the last few years have been prototyped using this driver and I
> am planning more new features based on this board.
> 
> During the ELC in San Jose a month back I discussed whether it would be OK to
> upstream this driver, even though the hardware is not for sale. Mauro had no
> problem with this and given the fact that this driver is a good starting
> point for similar HDMI hardware, and that this allows me to upstream new
> API additions showing them off in this driver (so ensuring that they are
> actually used somewhere), I've decided to go ahead with this.
> 
> This patch series starts off with a few improvements to other drivers:
> 
> The adv7842 now makes the output pixel port format configurable, just like
> its cousin adv7604. Note that there is one user of adv7842_platform_data:
> arch/blackfin/mach-bf609/boards/ezkit.c. However, this board code has been
> broken from the beginning and nobody noticed since gcc doesn't support the
> bf609. You need a custom toolchain to compile this 
> 
> I can't do anything about this, someone (Scott Jiang?) will need to fix
> this.
> 
> The next patch makes it possible to requeue buffers in vb2 from the driver.
> It's a very small change, but the cobalt driver uses that while it is
> waiting for a stable video signal.
> 
> The next patch is from Jean-Michel Hautbois which hasn't been merged yet
> since no driver used that event, but in the next patch I implement it.
> 
> The final patch is the cobalt driver itself.
> 
> Note that the m00* headers are generated from our FPGA code (slightly
> cleaned up by hand), which is why there are many lines > 80 columns.
> It makes sense in this case and it does not affect the readability, and
> I don't want to edit them too much since that would make it hard to handle
> when they are regenerated due to FPGA changes.
> 
> And there are also a lot of volatile __iomem pointers: the memory-mapped
> registers are written and read directly using struct pointers, so you really
> need volatile __iomem there.
> 
> In the near future I plan on added CEC support (once the CEC framework has
> been merged), colorspace conversion support, possibly deep color support and
> more. But let's try to get this driver in first.
> 
> Regards,
> 
> 	Hans
> 	
> Hans Verkuil (4):
>   adv7842: Make output format configurable through pad format operations
>   vb2: allow requeuing buffers while streaming
>   adv7604/adv7842: replace FMT_CHANGED by V4L2_DEVICE_NOTIFY_EVENT
>   cobalt: add new driver
> 
> jean-michel.hautbois@xxxxxxxxxxx (1):
>   v4l2-subdev: allow subdev to send an event to the v4l2_device notify
>     function
> 
>  Documentation/video4linux/v4l2-framework.txt       |    4 +
>  MAINTAINERS                                        |    8 +
>  drivers/media/i2c/adv7604.c                        |   12 +-
>  drivers/media/i2c/adv7842.c                        |  280 ++++-
>  drivers/media/pci/Kconfig                          |    1 +
>  drivers/media/pci/Makefile                         |    1 +
>  drivers/media/pci/cobalt/Kconfig                   |   18 +
>  drivers/media/pci/cobalt/Makefile                  |    5 +
>  drivers/media/pci/cobalt/cobalt-alsa-main.c        |  162 +++
>  drivers/media/pci/cobalt/cobalt-alsa-pcm.c         |  603 ++++++++++
>  drivers/media/pci/cobalt/cobalt-alsa-pcm.h         |   22 +
>  drivers/media/pci/cobalt/cobalt-alsa.h             |   41 +
>  drivers/media/pci/cobalt/cobalt-cpld.c             |  341 ++++++
>  drivers/media/pci/cobalt/cobalt-cpld.h             |   29 +
>  drivers/media/pci/cobalt/cobalt-driver.c           |  821 +++++++++++++
>  drivers/media/pci/cobalt/cobalt-driver.h           |  377 ++++++
>  drivers/media/pci/cobalt/cobalt-flash.c            |  132 ++
>  drivers/media/pci/cobalt/cobalt-flash.h            |   29 +
>  drivers/media/pci/cobalt/cobalt-i2c.c              |  396 ++++++
>  drivers/media/pci/cobalt/cobalt-i2c.h              |   25 +
>  drivers/media/pci/cobalt/cobalt-irq.c              |  254 ++++
>  drivers/media/pci/cobalt/cobalt-irq.h              |   25 +
>  drivers/media/pci/cobalt/cobalt-omnitek.c          |  341 ++++++
>  drivers/media/pci/cobalt/cobalt-omnitek.h          |   62 +
>  drivers/media/pci/cobalt/cobalt-v4l2.c             | 1260 ++++++++++++++++++++
>  drivers/media/pci/cobalt/cobalt-v4l2.h             |   22 +
>  .../cobalt/m00233_video_measure_memmap_package.h   |  115 ++
>  .../pci/cobalt/m00235_fdma_packer_memmap_package.h |   44 +
>  .../media/pci/cobalt/m00389_cvi_memmap_package.h   |   59 +
>  .../media/pci/cobalt/m00460_evcnt_memmap_package.h |   44 +
>  .../pci/cobalt/m00473_freewheel_memmap_package.h   |   57 +
>  .../m00479_clk_loss_detector_memmap_package.h      |   53 +
>  .../m00514_syncgen_flow_evcnt_memmap_package.h     |   88 ++
>  drivers/media/v4l2-core/videobuf2-core.c           |   11 +-
>  include/media/adv7604.h                            |    1 -
>  include/media/adv7842.h                            |   92 +-
>  include/media/v4l2-subdev.h                        |    2 +
>  37 files changed, 5743 insertions(+), 94 deletions(-)
>  create mode 100644 drivers/media/pci/cobalt/Kconfig
>  create mode 100644 drivers/media/pci/cobalt/Makefile
>  create mode 100644 drivers/media/pci/cobalt/cobalt-alsa-main.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-alsa-pcm.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-alsa-pcm.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-alsa.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-cpld.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-cpld.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-driver.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-driver.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-flash.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-flash.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-i2c.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-i2c.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-irq.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-irq.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-omnitek.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-omnitek.h
>  create mode 100644 drivers/media/pci/cobalt/cobalt-v4l2.c
>  create mode 100644 drivers/media/pci/cobalt/cobalt-v4l2.h
>  create mode 100644 drivers/media/pci/cobalt/m00233_video_measure_memmap_package.h
>  create mode 100644 drivers/media/pci/cobalt/m00235_fdma_packer_memmap_package.h
>  create mode 100644 drivers/media/pci/cobalt/m00389_cvi_memmap_package.h
>  create mode 100644 drivers/media/pci/cobalt/m00460_evcnt_memmap_package.h
>  create mode 100644 drivers/media/pci/cobalt/m00473_freewheel_memmap_package.h
>  create mode 100644 drivers/media/pci/cobalt/m00479_clk_loss_detector_memmap_package.h
>  create mode 100644 drivers/media/pci/cobalt/m00514_syncgen_flow_evcnt_memmap_package.h
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux