S2-liplianin

From LinuxTVWiki
Jump to navigation Jump to search

A v4l branch containing support for several new DVB cards (e.g. TeVii and DVBWorld).

The source code is available from the mercurial repository.

Install

hg clone http://mercurial.intuxication.org/hg/s2-liplianin/
cd s2-liplianin
make
make install
reboot

DKMS package

The following Debian/Ubuntu DPMS packages exist to automatically build the kernel modules:

  • There's an older (March 3, 2010) s2-liplianin-dkms ubuntu package available at the vdr-devel PPA.
    • The build script for it can be found here
  • A dkms package from March 1, 2011 is available here.
    • Build script, etc. can be found here.
    • Tested with the Debian kernels: 2.6.32, 2.6.34, 2.6.35
    • Doesn't work with the Ubuntu 2.6.32 kernel

Problems

Kernel 2.6.32

s2-liplianin/v4l/ir-sysfs.c: In function 'store_protocols':
s2-liplianin/v4l/ir-sysfs.c:137: error: implicit declaration of function 'skip_spaces'
s2-liplianin/v4l/ir-sysfs.c:137: warning: assignment makes pointer from integer without a cast
s2-liplianin/v4l/ir-sysfs.c:178: warning: assignment makes pointer from integer without a cast

Fixed with ir-sysfs: Fix skip_spaces compilation error for kernel 2.6.32

v4l/firedtv-1394.c:22:17: error: dma.h: No such file or directory
v4l/firedtv-1394.c:23:21: error: csr1212.h: No such file or directory
v4l/firedtv-1394.c:24:23: error: highlevel.h: No such file or directory
v4l/firedtv-1394.c:25:19: error: hosts.h: No such file or directory
v4l/firedtv-1394.c:26:22: error: ieee1394.h: No such file or directory
v4l/firedtv-1394.c:27:17: error: iso.h: No such file or directory
v4l/firedtv-1394.c:28:21: error: nodemgr.h: No such file or directory
v4l/firedtv-1394.c:41: warning: 'struct hpsb_iso' declared inside parameter list
v4l/firedtv-1394.c:41: warning: its scope is only this definition or declaration, which is probably not what you want
v4l/firedtv-1394.c: In function 'rawiso_activity_cb':
v4l/firedtv-1394.c:57: error: dereferencing pointer to incomplete type
v4l/firedtv-1394.c:58: error: implicit declaration of function 'hpsb_iso_n_ready'
v4l/firedtv-1394.c:65: error: dereferencing pointer to incomplete type
v4l/firedtv-1394.c:66: error: implicit declaration of function 'dma_region_i'
v4l/firedtv-1394.c:66: error: dereferencing pointer to incomplete type
v4l/firedtv-1394.c:66: error: expected expression before 'unsigned'
v4l/firedtv-1394.c:68: error: dereferencing pointer to incomplete type
v4l/firedtv-1394.c:72: error: dereferencing pointer to incomplete type
v4l/firedtv-1394.c:86: error: implicit declaration of function 'hpsb_iso_recv_release_packets'
...

Set CONFIG_DVB_FIREDTV=n in v4l/.config

Kernel 2.6.34

In file included from s2-liplian/s2-liplianin/v4l/au0828.h:22,
                 from s2-liplian/s2-liplianin/v4l/au0828-core.c:29:
/usr/src/linux-headers-2.6.34-1-common/include/linux/usb.h:1375: error: static declaration of 'usb_buffer_alloc' follows non-static declaration
/usr/src/linux-headers-2.6.34-1-common/include/linux/usb.h:1369: note: previous declaration of 'usb_buffer_alloc' was here
/usr/src/linux-headers-2.6.34-1-common/include/linux/usb.h:1380: error: static declaration of 'usb_buffer_free' follows non-static declaration
/usr/src/linux-headers-2.6.34-1-common/include/linux/usb.h:1371: note: previous declaration of 'usb_buffer_free' was here
  CC [M]  s2-liplian/s2-liplianin/v4l/au0828-cards.o
make[5]: *** [s2-liplian/s2-liplianin/v4l/au0828-core.o] Error 1

Fixed with Fix usb_buffer_alloc/usb_buffer_free compilation error for kernel 2.6.34

Kernel 2.6.37

s2-liplian/s2-liplianin/v4l/flexcop-i2c.c: In function 'flexcop_i2c_init':
s2-liplian/s2-liplianin/v4l/flexcop-i2c.c:253: error: 'I2C_CLASS_TV_DIGITAL' undeclared (first use in this function)
s2-liplian/s2-liplianin/v4l/flexcop-i2c.c:253: error: (Each undeclared identifier is reported only once
s2-liplian/s2-liplianin/v4l/flexcop-i2c.c:253: error: for each function it appears in.)

Fixed with i2c: Stop using I2C_CLASS_TV_DIGITAL 1

s2-liplianin/v4l/hexium_orion.c: In function 'hexium_probe':
2-liplianin/v4l/hexium_orion.c:234: error: 'I2C_CLASS_TV_ANALOG' undeclared (first use in this function)
s2-liplianin/v4l/hexium_orion.c:234: error: (Each undeclared identifier is reported only once
s2-liplianin/v4l/hexium_orion.c:234: error: for each function it appears in.)

Fixed with i2c: Stop using I2C_CLASS_TV_ANALOG 2

s2-liplian/s2-liplianin/v4l/dvb_frontend.c: In function 'dvb_frontend_stop':
s2-liplian/s2-liplianin/v4l/dvb_frontend.c:718: error: implicit declaration of function 'init_MUTEX'

Fixed with dvb: Convert "mutex" to semaphore


Kernel 3.0-3.1

Among more:

s2-liplianin/v4l/tuner-xc2028.c: In function 'xc2028_set_params':
s2-liplianin/v4l/tuner-xc2028.c:1178:5: error: 'T_DIGITAL_TV' undeclared (first use in this function)
s2-liplianin/v4l/tuner-xc2028.c:1178:5: note: each undeclared identifier is reported only once for each function it appears in
s2-liplianin/v4l/tuner-xc2028.c:1179:1: warning: control reaches end of non-void function [-Wreturn-type]
s2-liplianin/v4l/tea5761.c: In function 'set_radio_freq':
s2-liplianin/v4l/tea5761.c:150:22: error: 'T_STANDBY' undeclared (first use in this function)
s2-liplianin/v4l/tea5761.c:150:22: note: each undeclared identifier is reported only once for each function it appears in
s2-liplianin/v4l/tda9887.c:572:20: error: 'T_STANDBY' undeclared (first use in this function)
s2-liplianin/v4l/tda9887.c:572:20: note: each undeclared identifier is reported only once for each function it appears in
s2-liplianin/v4l/tda9887.c: In function 'tda9887_standby':
s2-liplianin/v4l/tda9887.c:620:15: error: 'T_STANDBY' undeclared (first use in this function)
s2-liplianin/v4l/tda9887.c: In function 'tda9887_attach':
s2-liplianin/v4l/tda9887.c:690:16: error: 'T_STANDBY' undeclared (first use in this function)
s2-liplianin/v4l/au0828-cards.c: In function 'au0828_card_setup':
s2-liplianin/v4l/au0828-cards.c:189:6: error: 'T_DIGITAL_TV' undeclared (first use in this function)
s2-liplianin/v4l/au0828-cards.c:189:6: note: each undeclared identifier is reported only once for each function it appears in
s2-liplianin/v4l/au0828-cards.c:215:5: warning: passing argument 4 of 'v4l2_i2c_new_subdev' makes integer from pointer without a cast [enabled by default] include/media/v4l2-common.h:126:21: note: expected 'u8' but argument is of type 'char *'
s2-liplianin/v4l/au0828-cards.c:215:5: warning: passing argument 5 of 'v4l2_i2c_new_subdev' makes pointer from integer without a cast [enabled by default] include/media/v4l2-common.h:126:21: note: expected 'const short unsigned int *' but argument is of type 'int'
s2-liplianin/v4l/au0828-cards.c:215:5: error: too many arguments to function 'v4l2_i2c_new_subdev' include/media/v4l2-common.h:126:21: note: declared here
s2-liplianin/v4l/au0828-cards.c:224:5: warning: passing argument 4 of 'v4l2_i2c_new_subdev' makes integer from pointer without a cast [enabled by default] include/media/v4l2-common.h:126:21: note: expected 'u8' but argument is of type 'char *'
s2-liplianin/v4l/au0828-cards.c:224:5: warning: passing argument 5 of 'v4l2_i2c_new_subdev' makes pointer from integer without a cast [enabled by default] include/media/v4l2-common.h:126:21: note: expected 'const short unsigned int *' but argument is of type 'unsigned char'
s2-liplianin/v4l/au0828-cards.c:224:5: error: too many arguments to function 'v4l2_i2c_new_subdev'
s2-liplianin/v4l/au8522_decoder.c:39:32: fatal error: media/v4l2-i2c-drv.h: No such file or directory
s2-liplianin/v4l/flexcop-pci.c: In function 'flexcop_pci_init':
s2-liplianin/v4l/flexcop-pci.c:339:2: error: implicit declaration of function 'request_irq' [-Werror=implicit-function-declaration]
s2-liplianin/v4l/flexcop-pci.c:340:6: error: 'IRQF_SHARED' undeclared (first use in this function)
s2-liplianin/v4l/flexcop-pci.c:340:6: note: each undeclared identifier is reported only once for each function it appears in
s2-liplianin/v4l/flexcop-pci.c: In function 'flexcop_pci_exit':
s2-liplianin/v4l/flexcop-pci.c:359:3: error: implicit declaration of function 'free_irq' [-Werror=implicit-function-declaration]
s2-liplianin/v4l/bttv-driver.c:45:28: fatal error: linux/smp_lock.h: No such file or directory