[mythtv-users] Which device is which

R. G. Newbury newbury at mandamus.org
Wed Feb 15 20:22:57 UTC 2006


Michael Haan wrote:
> On 2/15/06, *James Dastrup* <jc at dastrup.com <mailto:jc at dastrup.com>> 
> wrote:
>
>     On Wed, 2006-02-15 at 12:34 -0500, Michael Haan wrote:
>     > On 2/15/06, James Dastrup <jc at dastrup.com
>     <mailto:jc at dastrup.com>> wrote:
>     >         On Tue, 2006-02-14 at 21:32 -0500, Michael Haan wrote:
>     >         > On 2/14/06, Nick Rout <nick at rout.co.nz
>     <mailto:nick at rout.co.nz>> wrote:
>     >         >         On Tue, 14 Feb 2006 21:09:27 -0500
>     >         >         Michael Haan wrote:
>              > I've got a pvr-350, and HD3000 and a DVICO Fusion5
>     >         Lite, but
>     >         >         I'm having a hard time telling which device is
>     being
>     >         loaded
>     >         >         where, specifically the HD3000 and the
>     >         pvr-350.  Attached is
>     >         >         my dmesg output - can anyone help?
>     >         >         I don't know what a dvico fusion is, but the
>     drivers
>     >         i can see
>     >         >         seem to load in the order:
>     >         >         bttv
>     >         >         ivtv - thats the pvr 350
>     >         >         hd3000 (whatever driver that actually is0
>     >         >         so the devices should appear
>     >         at /dev/video0, /dev/video1 etc,
>     >         >         or they might be /dev/video/0 /dev/video/1 etc
>
>     >         >
>     >         > Ok, and the dvb devices on the Fusion and the
>     HD3000?  There
>     >         seems to
>     >         > be only /dev/dvb0/adapter0/frontend0...
>     >         > _______________________________________________
>     >
>     >         Not sure where you got the "hd3000" module from. I would
>     >         suggest using
>     >         the built-in kernel driver for the pcHDTV-3000. You need at
>     >         least kernel
>     >         ver 2.6.12 and the module you load is called "cx88-dvb".  It
>     >         will show
>     >         up as /dev/dvb/adapter0, and any other cards that use
>     the same
>     >         driver
>     >         will show up as /dev/dvb/adapter1, /dev/dvb/adapter2, etc.
>
>     >
>     > I'm running 2.6.15 and lsmod shows cx88_dvb is loaded.  So, I'm
>     > confused, because dmesg shows the bttv card as dvb0 and there are no
>     > other dvb listings in /dev.
>
>     I'm not exactly sure about the bttv card (Is that needed for the
>     DVico
>     card?)  Anyway, for the hd3000, this is exactly what you need, nothing
>     more, with kernel 2.6.15:
>
>     Multimedia Devices -->
>       <*> Video For Linux -->
>           Video For Linux -->
>              <M> Conexant 2388x (bt878 successor) support
>              <M>  DVB/ATSC Support for cx2388x based TV cards
>              [ ]   Build all supported frontends for cx2388x based TV
>     cards
>              [*]     OR51132 ATSC Support
>           Digital Video Broadcasting Devices  --->
>              [*] DVB For Linux
>                  Customise DVB Frontends  --->
>                    <M> OR51132 based (pcHDTV HD3000 card)
>
>
> Right, I believe the bttv card id the DVICO.  Again, dmesg shows that 
> cx88_dvb and various oren* drivers so I don't under know what is what.

The things listed above are the settings in the .config file for 
compiling a kernel,
When those are included in a kernel, the kernel will check for the 
hardware and will install the kernel modules.
The modules installed however are not necessarily the appropriate modules.
And, at least on Fedora Core4 with the 2.6.14-1656 kernel, modprobe.conf 
is thereafter ignored in respect of that hardware!
and you must remember that an HD3000 card has 2 mutually distinct and 
incompatible modes of operation which are available, one at a time.

If the kernel decides to load the cx8800 module (which is for NTSC) 
first, then the HD3000 card will show up at /dev/video0, but if the 
cx88-dvb module is loaded (for ATSC or OTA HD) then the card shows up at 
/dev/dvb/adapter0/dvr0.

If you then have lines in your modprobe.conf for the pvr card but the 
kernel loads the HD3000 card as NTSC,
alias char-major-81 videodev
alias char-major-81-0 ivtv
 the PVR card will actually show up at /dev/video1 as the kernel has 
stuffed the HD3000 card at /dev/video0 and forced the pvr card down by 
one number.

So, quick check here: do you have /video0 and /video1.... then you have 
2 NTSC cards operational. And the point of the operation is probably to 
have at least on digital card: the HD3000!
No wonder you cannot figure out where things are, correct?... Everything 
it is telling you is true, and correct, but not what you want!

What you need to do is force the unloading of the wrong modules and the 
loading of the correct modules, earlier in the boot process.
Put the following lines into rc.local.

rmmod cx88-blackbird     (you can use modprobe -r instead)
rmmod cx8800
modprobe -v cx88-dvb

rc.local is the last normal 'initialization' shell script.  Now you 
should see /dev/dvb/adapter0/dvr0 for the HD3000.

You can run these from a shell and set what happens in dmesg right now. 
And then check /dev/

I don't know enough about bttv type cards too know what happens there, 
but I would suspect that loading the bttv module through modprobe.conf 
will force the bttv card to take the next spot: /dev/dvb/adapter1/etc.

Geoff

-- 
       R. Geoffrey Newbury			
     Barrister and Solicitor
 Suite 106, 150 Lakeshore Road West
    Mississauga, Ontario, L5H 3R2

  905-271-9600  Fax 905-271-1638
       newbury at mandamus.org



More information about the mythtv-users mailing list