I took a step away from the PCTV 340e and a couple of outstanding em28xx device support issues to work on something different tonight.
Michael sent me a question tonight asking me to remind him where the saa7134 provides a pointer to the ALSA device in sysfs. I dug through my archives, and found that he had told me it could be found here:
/sys/class/video4linux/video0/device/sound/card1
Now take note that this only works on saa7134. On devices such as em28xx and au0828 it doesn't appear here. Given the inconsistency between drivers, as well as the desire for there to be some consistent...
Some interesting news over the last couple of days related to the recent CX23885 IR posting. Andy Walls contacted us and said he's willing to develop support for IR on the Conexant CX23888 silicon, namely the HVR-1850. Andy is well known for his work in the cx18 / HVR-1600 driver.
The CX23888 is a superset 'big brother' PCIe chip to the CX23885. While the CX23888 IR work will not be directly compatible with the CX23885 silicon, it's being developed in such a was that it will be significantly easier to make IR work on the CX23885/7 based boards in the future. (Think HVR-1800, HVR-1500, HVR1700,...
Spent another evening working on the PCTV 340e. I refactored a bunch of the xc4000 code so the standard firmware and scode blobs now successfully load. For the moment the video standard is left at the default and the driver is hard-coded to 8Mhz DVB-T.
Also started going through the dib7000p configuration, which is needed before a lock is possible. I'm through the AGC configuration and just have to do the PLL config. Once that is done I will ask David to make a tuning attempt on 8Mhz and see if he gets a lock.
Sohail Syyed wrote to us and said he's been having issues using the HVR-1300 when he switches from Analog Encoder mode back to DVB-T. He suggested a three line change. We've worked that into a patch and this appears to have fixed the issue, a working tree is here.
We'll be requesting this is merged later today.Edit: This has been submitted for merge.
Thank you Sohail.
We've fixed a bug related to a lack of DVB-T on the HVR1700, the fix is in this tree.
Background:
Five or six days ago Sohail Syyed noticed an issue in the UK where DVB-T on the HVR1700 no longer worked in the master repositories. Michael walked him through some basic repro cases and suggested he tries a number of different point in time trees. After the breakage was isolated we started working on the actual patch.
Today:
We've issued the pull request asking for this fix to be merged into the master repositories at LinuxTV.org, summary of the merge request below.
- cx25840: Bugfix...
Spent most of the afternoon working on my tool which generates the firmware images for the xc4000. Pulled in the code from the existing xc2028/3028 driver to load the scode/std firmware into the chip, but it seems to fail the i2c write with the DTV8 standard. Probably some issue with switching between direct/indirect mode.
Once that is done, we should be in reasonably good shape for the xc4000 driver (aside from a bunch of cleanup work). Will then have to get the dib7000p config setup at which point we can attempt to tune.
In other words, continuing to make forward progress...
Spent last night continuing to work on the xc4000 driver for the PCTV 340e. I got the INIT1 firmware to load, so in theory the only remaining work items are to get the scode support working and properly populate the dib7000p configuration block, at which point I can make a tuning attempt to see if I get signal lock.
On a separate note, I also need to get a firmware extract routine written for the drx-d firmware used by the HVR-900 R2 and PCTV 330e. I'm trying to simultaneously keep new development work on track while addressing issues coming up with support for older devices, which is not going...
20 Jul 2009 |
Posted by Steven Toth | 35 Comments.
35
KernelLabs have been cleaning up some cx23885 related bugs and adding support for DTV on the HVR-1850 Hauppauge board. The code changes are here and were sent today for review and merge into the mainline LinuxTV repositories. Here's a summary of the merge request:
- cx23885-417: fix broken IOCTL handling
- cx23885: check pointers before dereferencing in dprintk macro
- cx23885: Remove hardcoded gpio bits from the encoder driver
- cx23885: Convert existing HVR1800 GPIO calls into new format
- cx23885: Add support for ATSC/QAM on Hauppauge HVR-1850
- cx23885: Modify hardware revision detection...
I managed to successfully get the base firmware loaded into the xc4000 tonight. It turns up the mechanism for splitting i2c transactions is different between xc3028 and xc4000. The xc4000 requires the two leading bytes to be the same, whereas the xc3028 driver would only make the first byte the same. Once I cut over to the xc5000 version of the xc_load_i2c_sequence(), the i2c errors went away. Also, checked in a hack to get the request_firmware() call to work properly with the dib7000p i2c master under 2.6.31 (thanks to Michael Krufky for pointing me in the right direction).
Despite the work...
19 Jul 2009 |
Posted by Steven Toth | 57 Comments.
57
Yesterday I spent most of the day testing the saa7164-stable tree on Ubuntu 8.10 (Intrepid) 64bit Desktop. In previous tests here, here, here and here everything largely went well on both ATSC/QAM and DVB-T, on our both 32 and 64bit platforms.
The change history in the saa7164-stable repository shows that the tree hasn't needed (or had) any digital TV related bug fixes in 2 months.
The last major piece of development work took place on May 19th in saa7164-buffering, in which I took a completely different approach to managing DMA buffering in an attempt to rule out some issues that could occur...