All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/14] ddbridge: bump to ddbridge-0.9.29
@ 2017-07-09 19:42 Daniel Scheller
  2017-07-09 19:42 ` [PATCH 01/14] [media] ddbridge: move/reorder functions Daniel Scheller
                   ` (16 more replies)
  0 siblings, 17 replies; 28+ messages in thread
From: Daniel Scheller @ 2017-07-09 19:42 UTC (permalink / raw)
  To: linux-media, mchehab, mchehab; +Cc: jasmin, d_spingler, rjkm

From: Daniel Scheller <d.scheller@gmx.net>

Preferrably for Linux 4.14 (to get things done).

Hard-depends on the STV0910/STV6111 driver patchset as the diff and the
updated code depends on the driver and the changes involved with the
glue code of the STV/DDCineS2V7 series [1].

Mauro/Media maintainers, this updates drivers/media/pci/ddbridge to the
very latest code that DD carry in their vendor driver package as of
version 0.9.29, in the "once, the big-bang-way is ok" way as discussed at
[2] (compared to the incremental, awkward to do variant since that
involves dissecting all available release archives and having to - try
to - build proper commits out of this, which will always be inaccurate;
a start was done at [3], however - and please understand - I definitely
don't want to continue doing that...)

In patch 14, I add myself to MAINTAINERS. This means I will care about
getting driver updates as they're released by DD into mainline,  starting
from this (0.9.29) version, which is definitely doable in an incremental
way. So, I'll make sure the in-kernel driver won't bit-rot again, and it
will receive new hardware support as it becomes available in a timely
manner.

While the driver code bump looks massive, judging from the diff, there's
mostly a whole lot of refactoring and restructuring of variables, port/
link management and all such stuff in it. Feature-wise, this is most
notable:

 - Support for all (PCIe) CI (single/duo) cards and Flex addons
 - Support for MSI (Message Signaled Interrupts), though disabled by
   default since there were still reports of problems with this
 - TS Loopback support (set up ports to behave as if a CI is connected,
   without decryption of course)
 - As mentioned: Heavy code reordering, and split up into multiple files

Stripped functionality compared to dddvb:

 - DVB-C modulator card support removed (requires DVB core API)
 - OctoNET SAT>IP server/box support removed (requires API aswell)
 - with this, GT link support was removed (only on OctoNET hardware)
 - MaxS8 4/8 DVB-S/S2 card support (temporarily) removed (requires an
   additional Demod driver; subject for another series)

A note on the patches:

The bump starts by aligning the code "order-wise" to the updated driver,
to keep the diff a bit cleaner. Next, the code split is applied, without
actually changing any functionality. Compared to upstream, this isn't done
by moving functions into different C files and then do an include on them,
but we're handling them with the Makefile, building separate objects, and
having proper prototypes in ddbridge.h. After the code bump, further split
up is applied to increase readability and maintainability (also, for the
MaxS8 support, there will be another object with another ~400 LoC, which
originally lives in ddbridge-core aswell). Then, all issues found by W=1
and smatch are resolved, one by one. This is kept separate since those
fixes will be proposed for upstream inclusion. The last thing is the
addition of the MSI default Kconfig options which will mainly inform users
that there's something that might(!) cause issues but is still being
worked on - the default is "off" to provide a proper OotB experience.

To distinguish from the original unchanged vendor driver, "-integrated" is
suffixed to the version code.

Note on checkpatch:

First two patches are solely code-moving, so checkpatch will complain on
them. With the ddbridge code bump, all style issues are resolved.

Yes, you will hate me for this large code drop, but at least we sort-of
discussed this beforehand, and we have to start *somewhere*.

Thanks in advance for reviewing and (optimally) getting this merged and
getting the DD driver dilemma solved hopefully once and for all.

[1] http://www.spinics.net/lists/linux-media/msg117946.html
[2] http://www.spinics.net/lists/linux-media/msg117358.html
[3] https://github.com/herrnst/dddvb-linux-kernel/compare/4226861...mediatree/master-ddbupdate

Daniel Scheller (14):
  [media] ddbridge: move/reorder functions
  [media] ddbridge: split code into multiple files
  [media] ddbridge: bump ddbridge code to version 0.9.29
  [media] ddbridge: split I/O related functions off from ddbridge.h
  [media] ddbridge: split off IRQ handling
  [media] ddbridge: split off hardware definitions and mappings
  [media] ddbridge: check pointers before dereferencing
  [media] ddbridge: only register frontends in fe2 if fe is not NULL
  [media] ddbridge: fix possible buffer overflow in ddb_ports_init()
  [media] ddbridge: remove unreachable code
  [media] ddbridge: fix impossible condition warning
  [media] ddbridge: fix dereference before check
  [media] ddbridge: Kconfig option to control the MSI modparam default
  [media] MAINTAINERS: add entry for ddbridge

 MAINTAINERS                                |    8 +
 drivers/media/pci/ddbridge/Kconfig         |   15 +
 drivers/media/pci/ddbridge/Makefile        |    3 +-
 drivers/media/pci/ddbridge/ddbridge-core.c | 4242 ++++++++++++++++++----------
 drivers/media/pci/ddbridge/ddbridge-hw.c   |  299 ++
 drivers/media/pci/ddbridge/ddbridge-hw.h   |   52 +
 drivers/media/pci/ddbridge/ddbridge-i2c.c  |  310 ++
 drivers/media/pci/ddbridge/ddbridge-io.h   |   71 +
 drivers/media/pci/ddbridge/ddbridge-irq.c  |  161 ++
 drivers/media/pci/ddbridge/ddbridge-main.c |  393 +++
 drivers/media/pci/ddbridge/ddbridge-regs.h |  138 +-
 drivers/media/pci/ddbridge/ddbridge.h      |  355 ++-
 12 files changed, 4402 insertions(+), 1645 deletions(-)
 create mode 100644 drivers/media/pci/ddbridge/ddbridge-hw.c
 create mode 100644 drivers/media/pci/ddbridge/ddbridge-hw.h
 create mode 100644 drivers/media/pci/ddbridge/ddbridge-i2c.c
 create mode 100644 drivers/media/pci/ddbridge/ddbridge-io.h
 create mode 100644 drivers/media/pci/ddbridge/ddbridge-irq.c
 create mode 100644 drivers/media/pci/ddbridge/ddbridge-main.c

-- 
2.13.0

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

end of thread, other threads:[~2017-07-23 12:16 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-09 19:42 [PATCH 00/14] ddbridge: bump to ddbridge-0.9.29 Daniel Scheller
2017-07-09 19:42 ` [PATCH 01/14] [media] ddbridge: move/reorder functions Daniel Scheller
2017-07-09 19:42 ` [PATCH 02/14] [media] ddbridge: split code into multiple files Daniel Scheller
2017-07-09 19:42 ` [PATCH 03/14] [media] ddbridge: bump ddbridge code to version 0.9.29 Daniel Scheller
2017-07-09 19:42 ` [PATCH 04/14] [media] ddbridge: split I/O related functions off from ddbridge.h Daniel Scheller
2017-07-09 19:42 ` [PATCH 05/14] [media] ddbridge: split off IRQ handling Daniel Scheller
2017-07-09 19:42 ` [PATCH 06/14] [media] ddbridge: split off hardware definitions and mappings Daniel Scheller
2017-07-09 19:42 ` [PATCH 07/14] [media] ddbridge: check pointers before dereferencing Daniel Scheller
2017-07-09 19:42 ` [PATCH 08/14] [media] ddbridge: only register frontends in fe2 if fe is not NULL Daniel Scheller
2017-07-09 19:42 ` [PATCH 09/14] [media] ddbridge: fix possible buffer overflow in ddb_ports_init() Daniel Scheller
2017-07-10  8:21   ` Ralph Metzler
2017-07-10 15:32     ` Daniel Scheller
2017-07-09 19:42 ` [PATCH 10/14] [media] ddbridge: remove unreachable code Daniel Scheller
2017-07-10  8:24   ` Ralph Metzler
2017-07-10 15:34     ` Daniel Scheller
2017-07-09 19:42 ` [PATCH 11/14] [media] ddbridge: fix impossible condition warning Daniel Scheller
2017-07-09 19:42 ` [PATCH 12/14] [media] ddbridge: fix dereference before check Daniel Scheller
2017-07-09 19:42 ` [PATCH 13/14] [media] ddbridge: Kconfig option to control the MSI modparam default Daniel Scheller
2017-07-09 19:42 ` [PATCH 14/14] [media] MAINTAINERS: add entry for ddbridge Daniel Scheller
2017-07-10  8:11 ` [PATCH 00/14] ddbridge: bump to ddbridge-0.9.29 Ralph Metzler
2017-07-10 15:31   ` Daniel Scheller
2017-07-11  9:11     ` Ralph Metzler
2017-07-11 15:30       ` Daniel Scheller
2017-07-20 15:24         ` Mauro Carvalho Chehab
2017-07-20 18:25           ` Daniel Scheller
2017-07-20 21:16             ` Jasmin J.
2017-07-15 20:37 ` Richard Scobie
2017-07-23 12:16 ` Daniel Scheller

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.