You are not logged in.
Pages: 1
Hi all
i'm tryin to get this card installed but without any luck.
It seems there are no good drivers available anymore except for: https://bitbucket.org/powARman/v4l-dvb-saa716x/overview but i get compile errors
the card:
03:00.0 Multimedia controller: Philips Semiconductors SAA7160 (rev 02)
Subsystem: Philips Semiconductors Device 0002
Flags: bus master, fast devsel, latency 0, IRQ 3
Memory at f7d00000 (64-bit, non-prefetchable) [size=1M]
Capabilities: [40] MSI: Enable- Count=1/32 Maskable- 64bit+
Capabilities: [50] Express Endpoint, MSI 00
Capabilities: [74] Power Management version 2
Capabilities: [80] Vendor Specific Information: Len=50 <?>
Capabilities: [100] Vendor Specific Information: ID=0000 Rev=0 Len=088 <?>
lshw:
*-multimedia UNCLAIMED
description: Multimedia controller
product: SAA7160
vendor: Philips Semiconductors
physical id: 0
bus info: pci@0000:03:00.0
version: 02
width: 64 bits
clock: 33MHz
Errors while compiling the custom driver:
# make
make -C /usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l
make[1]: Entering directory '/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l'
creating symbolic links...
make -C firmware prep
make[2]: Entering directory '/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/firmware'
make[2]: Leaving directory '/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/firmware'
make -C firmware
make[2]: Entering directory '/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/firmware'
make[2]: Nothing to be done for 'default'.
make[2]: Leaving directory '/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/firmware'
Kernel build directory is /lib/modules/3.2.1-3-ARCH/build
make -C /lib/modules/3.2.1-3-ARCH/build SUBDIRS=/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l CFLAGS="-I../linux/include -D__KERNEL__ -I/include -DEXPORT_SYMTAB" modules
make[2]: Entering directory '/usr/src/linux-3.12.1-3-ARCH'
CC [M] /usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.o
In file included from /usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.h:10:0,
from /usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:22:
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/dvb_frontend.h:49:33: error: field 'parameters' has incomplete type
struct dvb_frontend_parameters parameters;
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/dvb_frontend.h:313:28: error: array type has incomplete element type
struct dvb_frontend_event events[MAX_EVENT];
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c: In function 'xc2028_set_params':
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1081:2: error: unknown type name 'fe_bandwidth_t'
fe_bandwidth_t bw = BANDWIDTH_8_MHZ;
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1081:26: error: 'BANDWIDTH_8_MHZ' undeclared (first use in this function)
fe_bandwidth_t bw = BANDWIDTH_8_MHZ;
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1081:26: note: each undeclared identifier is reported only once for each function it appears in
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1088:9: error: dereferencing pointer to incomplete type
bw = p->u.ofdm.bandwidth;
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1094:13: error: 'BANDWIDTH_6_MHZ' undeclared (first use in this function)
if (bw == BANDWIDTH_6_MHZ)
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1109:8: error: dereferencing pointer to incomplete type
if (p->frequency < 470000000)
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1116:7: error: 'BANDWIDTH_7_MHZ' undeclared (first use in this function)
case BANDWIDTH_7_MHZ:
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1117:8: error: dereferencing pointer to incomplete type
if (p->frequency < 470000000)
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1177:31: error: dereferencing pointer to incomplete type
return generic_set_freq(fe, p->frequency,
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1178:5: error: 'T_DIGITAL_TV' undeclared (first use in this function)
T_DIGITAL_TV, type, 0, demod);
^
/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.c:1179:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
scripts/Makefile.build:314: recipe for target '/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.o' failed
make[3]: *** [/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l/tuner-xc2028.o] Error 1
Makefile:1228: recipe for target '_module_/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l' failed
make[2]: *** [_module_/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l] Error 2
make[2]: Leaving directory '/usr/src/linux-3.12.1-3-ARCH'
Makefile:43: recipe for target 'default' failed
make[1]: *** [default] Error 2
make[1]: Leaving directory '/usr/src/powARman-v4l-dvb-saa716x-0dab24906ff0/v4l'
Makefile:27: recipe for target 'all' failed
make: *** [all] Error 2
Did try make clean, make distclean etc
any ideas how to get this card to work ?
PoC || GTFO
Offline
You're experiencing the joy of having what they call an "out of tree" device just like I am for other devices. Meaning that the "official" Linux developers aren't involved with the driver.
While the kernel folks try very hard not to break compatibility between kernel and user space, that's not so within the kernel itself. They're constantly tweaking things, and then they go fix the things that those changes break. But it's very common that these "out of tree" drivers won't get those fixes for quite some time (if ever) because the maintainers aren't keeping up to date.
Being on the bleeding edge with Arch exacerbates this situation, especially if the out of tree developers use a distro that lags behind and/or only updates the kernel infrequently because they haven't hit the problem (yet).
So to answer your question about getting it to work, possibly the only answer is that those compile errors would need to be investigated and fixed.
Offline
Pages: 1