Re: tw5864 driver development, help needed

From: Andrey Utkin
Date: Fri Jul 03 2015 - 10:23:21 EST


On Wed, Jun 3, 2015 at 1:03 AM, Andrey Utkin
<andrey.utkin@xxxxxxxxxxxxxxxxxxx> wrote:
> Hi! I am working on making a Linux driver for TW5864-based video&audio
> capture and encoding PCI boards. The driver is to be submitted for
> inclusion to Linux upstream.
> The following two links are links to boards available for buying:
> http://www.provideo.com.tw/web/DVR%20Card_TW-310.htm
> http://www.provideo.com.tw/web/DVR%20Card_TW-320.htm
> We possess one 8-port board and we try to make it play.
>
> http://whdd.org/tw5864/TW-3XX_Linux.rar - this is reference driver
> code. Overwhelmingly complicated IMO.
> http://whdd.org/tw5864/tw5864b1-ds.pdf - Datasheet.
> http://whdd.org/tw5864/TW5864_datasheet_0.6d.pdf - Another datasheet.
> These two differ in some minor points.
> https://github.com/krieger-od/linux - my work in progress on this, in
> drivers/staging/media/tw5864 directory. Derived from
> drivers/media/pci/tw68 (which is raw video capture card), defined
> reasonable part of registers, now trying to make device produce video
> capture and encoding interrupts, but cannot get any interrupts except
> GPIO and timer ones. This is currently the critical blocking issue in
> development.
> I hope that somebody experienced with similar boards would have
> quesswork on how to proceed.
> My work-on-progress code is dirty, so if you would agree to check that
> only if it will be cleaned up, please let me know.
>
> I am willing to pay for productive help.
>
> --
> Bluecherry developer.


Up... we are moving much slower than we expected, desperately needing help.

Running reference driver with Ubuntu 9 (with kernel 2.6.28.10) with
16-port card shows that the
reference driver fails to work with it correctly. Also that driver is
not complete, it requires your userland counterpart for usable
operation, which is far from being acceptable in production.

Currently what stops us with our driver is that "H264 encoding done"
interrupt doesn't repeat, and CRC checksums mismatch for the first
(and last) time this interrupt happens.
We do our best to mimic what the reference driver does, but we might
miss some point.

I suspect that my initialization of video inputs or board clock
configuration is insufficient or inconsistent with what device needs.

Our work in progress is located in
https://github.com/krieger-od/linux, directory
drivers/staging/media/tw5864

This is another request for expert help.
The time is very important for us now.

Thanks in advance and sorry for distraction.

--
Bluecherry developer.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/