[mythtv] HD3000: Could not get card info for card #0!

David Cain sblkMythDev at jimmiedave.com
Thu May 25 03:38:27 UTC 2006


OK, I've fixed the particular problem with recognizing the HD3000 card. I
still have some issues, but they're now normal MythTV installation stuff.

Many, many thanks to Mark Paulus for devoting time and attention and
helping me break the logjam. I really appreciate it.

Will also send this on to the users' list in hopes the next person to
experience this issue can find a quicker resolution.

------------------------
I was trying to set up MythTV 0.19 from debs on Debian Sarge, the
unofficial AMD64 distro.

I encountered the message "Could not get card info for card #0!" when
trying to set up the pcHDTV HD3000 card as a DVB device for US Over-The-Air
digital TV.

Here's the problem and some steps toward a solution:

1. Sarge's shipping kernel 2.6.8 doesn't support ATSC (US Over-The-Air
digital TV) in the kernel DVB driver (in particular the DVB API is <
version 3.1, and does not support ATSC).

2. Christian Marrilat's Sarge-based debs for mythTV support the default
kernel 2.6.8 (so no ATSC with these Sarge debs).

3. To get ATSC you have to install a newer kernel (I'm working with
2.6.16-1) and compile MythTV against the headers for that kernel.

4. If you're using  the unofficial AMD64 distro, the kernel headers have
errors in input.h which (at the time of this writing) mess up BITS_PER_LONG
and kernel_ulong_t defines. Band-aid solution is to apply this patch
(courtesy Mark Paulus) to [your-kernel-source]/linux/input.h:

--- input.h.orig        2006-05-18 10:52:07.000000000 -0600
+++ input.h     2006-05-10 15:18:49.000000000 -0600
@@ -10,14 +10,23 @@
   */

  #ifdef __KERNEL__
+#warning __KERNEL__ is defined.
  #include <linux/time.h>
  #include <linux/list.h>
  #include <linux/device.h>
  #include <linux/mod_devicetable.h>
  #else
+#warning __KERNEL__ isnt defined.
  #include <sys/time.h>
  #include <sys/ioctl.h>
-#include <asm/types.h>
+#include <asm-i386/types.h>
+#ifndef kernel_ulong_t
+typedef unsigned long kernel_ulong_t;
+#warning kernel_ulong_t isnt defined.
+#endif
+#ifndef BITS_PER_LONG
+#define BITS_PER_LONG 32
+#endif
  #endif

  /*

5. Mark Paulus also offered these other tips to set up your compile:

- In debian/rules: point  "--dvb-path" at your current kernel source

- In settings.pro:  add "QMAKE_PROJECT_DEPTH = 1"

- do a 'dch -i' to increment the versions, and to put in some comments

- from the debian directory, do a debuild to begin the build.


6. once you get it to compile - not easy for me - you'll need to install
your newly compiled stuff. The piece that did it for me was libmyth. After
installation, what in mythtv-setup was:

	Could not get card info for card #0!	Subtype: Success!

Became:

	Oren OR51132 VSB/QAM Frontend	Subtype: ATSC

I'm now able to use the tuner cards.

-----------------------

Note that if you're on AMD64 like me, you may (repeat: MAY) have better
luck using gcc-3.4 to compile - I've had a bunch of compiler segfaults
trying to compile the packages with gcc-3.3, and I see advice in several
places to move to 3.4 for AMD64. Don't know for a fact - that's my next
step.

Hope this helps someone out, and thanks again to Mark Paulus!

DC
-- 
------------------------------------------------------------

             ==  E  C  N  A  L  U  B  M  A  ==

             http://www.jimmiedave.com/

------------------------------------------------------------


More information about the mythtv-dev mailing list