Results 1 to 4 of 4

Thread: InfiniTV4 card network config

  1. #1

    Default InfiniTV4 card network config

    I've installed a Ceton InfiniTV4 cable card in my HTPC that is running openSUSE 13.1, x86_64. I've installed the drivers, and they seem to be okay. The card runs as an ethernet device, but I'm having trouble getting it set up and running on my openSUSE 13.1, x86_64 system. I'm looking for suggestions on how to get it running.

    When I run lsmod, it shows....
    ctn91xx                58189  0
    When I run Hardware Information from YAST2, I see the device listed under Network Card, listed as Multimedia video card. Here are the relevant entries:
    >> net.1: get network data
      net interface: name = enp4s0, path = /class/net/enp4s0
        type = 1
        hw_addr = 00:22:2c:ff:ff:ff
        net device: path = /devices/pci0000:00/0000:00:15.1/0000:04:00.0
        net driver: name = ctn91xx, path = /bus/pci/drivers/ctn91xx
    P: /devices/pci0000:00/0000:00:15.1/0000:04:00.0
      E: DEVPATH=/devices/pci0000:00/0000:00:15.1/0000:04:00.0
      E: DRIVER=ctn91xx
      E: ID_PCI_CLASS_FROM_DATABASE=Multimedia controller
      E: ID_PCI_SUBCLASS_FROM_DATABASE=Multimedia video controller
      E: MODALIAS=pci:v00001B7Cd00000004sv00001B7Csd00000004bc04sc00i00
      E: PCI_CLASS=40000
      E: PCI_ID=1B7C:0004
      E: PCI_SLOT_NAME=0000:04:00.0
      E: PCI_SUBSYS_ID=1B7C:0004
      E: SUBSYSTEM=pci
      P: /devices/pci0000:00/0000:00:15.1/0000:04:00.0/net/enp4s0
      E: DEVPATH=/devices/pci0000:00/0000:00:15.1/0000:04:00.0/net/enp4s0
      E: ID_BUS=pci
      E: ID_MODEL_ID=0x0004
      E: ID_NET_NAME_MAC=enx00222cffffff
      E: ID_NET_NAME_PATH=enp4s0
      E: ID_OUI_FROM_DATABASE=Ceton Corp
      E: ID_PCI_CLASS_FROM_DATABASE=Multimedia controller
      E: ID_PCI_SUBCLASS_FROM_DATABASE=Multimedia video controller
      E: ID_VENDOR_ID=0x1b7c
      E: IFINDEX=3
      E: INTERFACE=enp4s0
      E: SUBSYSTEM=net
      E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/enp4s0
      E: TAGS=:systemd:
      P: /devices/virtual/ctn91xx/ctn91xx_ctl0
      N: ctn91xx_ctl0
      S: ceton/ctn91xx_ctl0
      E: DEVLINKS=/dev/ceton/ctn91xx_ctl0
      E: DEVNAME=/dev/ctn91xx_ctl0
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_ctl0
      E: MAJOR=231
      E: MINOR=0
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_filter0_0
      N: ctn91xx_filter0_0
      S: ceton/ctn91xx_filter0_0
      E: DEVLINKS=/dev/ceton/ctn91xx_filter0_0
      E: DEVNAME=/dev/ctn91xx_filter0_0
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_filter0_0
      E: MAJOR=231
      E: MINOR=7
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_filter0_1
      N: ctn91xx_filter0_1
      S: ceton/ctn91xx_filter0_1
      E: DEVLINKS=/dev/ceton/ctn91xx_filter0_1
      E: DEVNAME=/dev/ctn91xx_filter0_1
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_filter0_1
      E: MAJOR=231
      E: MINOR=8
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_filter0_2
      N: ctn91xx_filter0_2
      S: ceton/ctn91xx_filter0_2
      E: DEVLINKS=/dev/ceton/ctn91xx_filter0_2
      E: DEVNAME=/dev/ctn91xx_filter0_2
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_filter0_2
      E: MAJOR=231
      E: MINOR=9
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_filter0_3
      N: ctn91xx_filter0_3
      S: ceton/ctn91xx_filter0_3
      E: DEVLINKS=/dev/ceton/ctn91xx_filter0_3
      E: DEVNAME=/dev/ctn91xx_filter0_3
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_filter0_3
      E: MAJOR=231
      E: MINOR=10
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_filter0_4
      N: ctn91xx_filter0_4
      S: ceton/ctn91xx_filter0_4
      E: DEVLINKS=/dev/ceton/ctn91xx_filter0_4
      E: DEVNAME=/dev/ctn91xx_filter0_4
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_filter0_4
      E: MAJOR=231
      E: MINOR=11
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_filter0_5
      N: ctn91xx_filter0_5
      S: ceton/ctn91xx_filter0_5
      E: DEVLINKS=/dev/ceton/ctn91xx_filter0_5
      E: DEVNAME=/dev/ctn91xx_filter0_5
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_filter0_5
      E: MAJOR=231
      E: MINOR=12
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_mpeg0_0
      N: ctn91xx_mpeg0_0
      S: ceton/ctn91xx_mpeg0_0
      E: DEVLINKS=/dev/ceton/ctn91xx_mpeg0_0
      E: DEVNAME=/dev/ctn91xx_mpeg0_0
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_mpeg0_0
      E: MAJOR=231
      E: MINOR=1
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_mpeg0_1
      N: ctn91xx_mpeg0_1
      S: ceton/ctn91xx_mpeg0_1
      E: DEVLINKS=/dev/ceton/ctn91xx_mpeg0_1
      E: DEVNAME=/dev/ctn91xx_mpeg0_1
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_mpeg0_1
      E: MAJOR=231
      E: MINOR=2
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_mpeg0_2
      N: ctn91xx_mpeg0_2
      S: ceton/ctn91xx_mpeg0_2
      E: DEVLINKS=/dev/ceton/ctn91xx_mpeg0_2
      E: DEVNAME=/dev/ctn91xx_mpeg0_2
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_mpeg0_2
      E: MAJOR=231
      E: MINOR=3
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_mpeg0_3
      N: ctn91xx_mpeg0_3
      S: ceton/ctn91xx_mpeg0_3
      E: DEVLINKS=/dev/ceton/ctn91xx_mpeg0_3
      E: DEVNAME=/dev/ctn91xx_mpeg0_3
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_mpeg0_3
      E: MAJOR=231
      E: MINOR=4
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_mpeg0_4
      N: ctn91xx_mpeg0_4
      S: ceton/ctn91xx_mpeg0_4
      E: DEVLINKS=/dev/ceton/ctn91xx_mpeg0_4
      E: DEVNAME=/dev/ctn91xx_mpeg0_4
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_mpeg0_4
      E: MAJOR=231
      E: MINOR=5
      E: SUBSYSTEM=ctn91xx
      P: /devices/virtual/ctn91xx/ctn91xx_mpeg0_5
      N: ctn91xx_mpeg0_5
      S: ceton/ctn91xx_mpeg0_5
      E: DEVLINKS=/dev/ceton/ctn91xx_mpeg0_5
      E: DEVNAME=/dev/ctn91xx_mpeg0_5
      E: DEVPATH=/devices/virtual/ctn91xx/ctn91xx_mpeg0_5
      E: MAJOR=231
      E: MINOR=6
      E: SUBSYSTEM=ctn91xx
    40: PCI 400.0: 0400 Multimedia video controller
      [Created at pci.319]
      Unique ID: Ljo_.FNY11H5lOa0
      Parent ID: I+Ba.kfTGFHKsqc1
      SysFS ID: /devices/pci0000:00/0000:00:15.1/0000:04:00.0
      SysFS BusID: 0000:04:00.0
      Hardware Class: graphics card
      Model: "Multimedia video controller"
      Vendor: pci 0x1b7c 
      Device: pci 0x0004 
      SubVendor: pci 0x1b7c 
      SubDevice: pci 0x0004 
      Revision: 0x01
      Driver: "ctn91xx"
      Driver Modules: "ctn91xx"
      Device File: enp4s0
      Memory Range: 0xfe200000-0xfe21ffff (rw,non-prefetchable)
      Memory Range: 0xfe220000-0xfe22ffff (rw,non-prefetchable)
      IRQ: 17 (149092 events)
      HW Address: 00:22:2c:ff:ff:ff
      Module Alias: "pci:v00001B7Cd00000004sv00001B7Csd00000004bc04sc00i00"
      Driver Info #0:
        Driver Status: ctn91xx is active
        Driver Activation Cmd: "modprobe ctn91xx"
      Config Status: cfg=no, avail=yes, need=no, active=unknown
      Attached to: #30 (PCI bridge)
    72: None 00.0: 10701 Ethernet
      [Created at net.124]
      Unique ID: 1N3t.ndpeucax6V1
      Parent ID: Ljo_.FNY11H5lOa0
      SysFS ID: /class/net/enp4s0
      SysFS Device Link: /devices/pci0000:00/0000:00:15.1/0000:04:00.0
      Hardware Class: network interface
      Model: "Ethernet network interface"
      Driver: "ctn91xx"
      Driver Modules: "ctn91xx"
      Device File: enp4s0
      HW Address: 00:22:2c:ff:ff:ff
      Config Status: cfg=no, avail=yes, need=no, active=unknown
      Attached to: #40 (Multimedia video controller)
    When I run /sbin/ifconfig -a, it has an entry that looks like this:
    > /sbin/ifconfig -a
    enp4s0    Link encap:Ethernet  HWaddr 00:22:2C:FF:FF:FF  
              BROADCAST MULTICAST  MTU:1500  Metric:1
              RX packets:6624 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:2289780 (2.1 Mb)  TX bytes:0 (0.0 b)
    Here is the in README file for the drivers (not much here as the manufacturer doesn't support linux, only provides drivers "as is"):
    *                                  Installation
    Install make, gcc, perl, kernel-devel and kernel-headers for your distribution. 
    Note: your running kernel is the same as the kernel-header and kernel-devel 
    installed. Then run:
    sudo make install
    sudo modprobe ctn91xx
    *                                  Usage
    You should see a network interface when you run ifconfig -a called ctn0
    You can set a static IP address on the subnet (don't
    use or just use a dhcp client to get an IP address for it.
    The InfiniTV device webpage will be available at
    From there you can tune via frequency or channel number. Only ClearQAM and
    CCI=0 content is available on linux due to lack of DRM support.
    Access video via a special device file created under:
    You can run "mplayer -cache 8192 /dev/ceton/ctn91xx_mpeg0_0" to play video
    off the first tuner. Depending on your system, extra buffering via the shell 
    might improve performance. E.g. 
    cat /dev/ceton/ctn91xx_mpeg0_0 | mplayer -cache 8192 -
    *                              Multiple Cards
    More than one InfiniTV is handled by creating more network interfaces
    (ctn1,ctn2,etc...). The IP assignment scheme is:
    Based on that, when I run ifconfig -a I should have a device called ctn0. I don't. However, I've got enp4s0. When I look in hardware info, enp4s0 is using the ctn91xx driver. So I think that's the device I need. However, it does not have an IP address, and, if it is the right device, it should have one.

    I've also found this link which gives additional setup information:

    From that, I think it's saying that since I'm using static IP addressing on this machine (and network), I need to manually assign the card the address of It will then give me an address of as the control interface. The problem is that I can't figure out how to add that IP address to that card. It doesn't show up in Network Settings, only my Realtek onboard NIC shows up. I tried manually adding it via Netwrok Settings by settins up an Ethernet device (0), using a kernel module of ctn91xx, and setting the IP address to, and mask of That didn't do anything.

    Does anybody have a clue how I can assign this card an IP address?

  2. #2

    Default Re: InfiniTV4 card network config

    I'll ask another way.....

    What file can I edit to change the network settings for a network adapter in openSUSE 13.1?

  3. #3

    Default Re: InfiniTV4 card network config

    Never mind. I figured it out on my own.

    In case anybody else is trying to get this working on their system, here's what I did:

    Once the drivers are installed and working, run
    /sbin/ifconfig -a
    You should see the InfiniTV card listed as one of the devices, but not under the ctn0 name that the documentation specifies. You can tell the InfiniTV card because the MAC address will be (or very similar to): 00:22:2C:FF:FF:FF. Note the name of the device. On my system it was, "enp4s0".

    YAST > Network Settings > Add
    On the Address tab, set the IP Address to "". Don't change anything else here.
    On the Hardware tab, under "Udev rules" there is a box titled "Device Name". Click the Change button next to that box. Type in the name of the device as listed in the results of your /sbin/ifconfig -a command. For me, that was "enp4s0".
    Click "OK".
    Click "Next"
    Click "Ok"

    In your browser, go to It should work.

    I hope that helps somebody else.

  4. #4

    Default Re: InfiniTV4 card network config

    Just wanted to say thanks for this. It saved me a lot of time. I'm using 13.2 with a "Centon InfiniTV 6" card and it worked just as you said. My card showed up as enp10s0.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts