Difference between revisions of "Talk:AVerMedia AVerTV HD Express A918R"

From LinuxTVWiki
Jump to: navigation, search
Line 1: Line 1:
  +
Following source files need to be updated:
After some days of investigations without any success, conclusion is:
 
 
!! Help needed to make "AVerMedia AVerTV HD Express A918R" working in linux. !!
 
 
= Investigations =
 
== Step 1 ==
 
What I tried is to tweak ''''dvb-usb-ids.h'''' file so that the A918R card (Id=0x'''0918''') is seen as default AFATECH_AF9015_9015 (Id=0x9015):
 
/* #define USB_PID_AFATECH_AF9015_9015 0x9015 */
 
#define USB_PID_AFATECH_AF9015_9015 0x0918
 
If this works, the conlusion would be that there is no special tweaks necessary for card A918R, which could be then added to files '''dvb-usb-ids.h''' and '''af9015.c''' files for next updates.
 
 
I also tried to add this line to '''/etc/modprobe.conf''':
 
alias usb:v07CAp0918d*dc*dsc*dp*ic*isc*ip* dvb-usb-af9015
 
but no luck.
 
 
== Step 2 ==
 
Tried compilation from hg_clone or media_build, but got this error I could not solved:
 
 
# make
 
make -C /home/share/DVB/hg_clone/media_build/v4l
 
make[1]: entrant dans le répertoire « /home/share/DVB/hg_clone/media_build/v4l »
 
perl scripts/make_config_compat.pl /lib/modules/3.5.0-21-generic/build ./.myconfig ./config-compat.h
 
'''Usb headers not found''' at scripts/make_config_compat.pl line 239.
 
make[1]: *** [config-compat.h] Erreur 2
 
 
Then tried to from linux source 3.5.0, using kernel 3.5.0-21-generic, after modification of following kernel media files:
 
   
 
'''dvb-usb-ids.h'''
 
'''dvb-usb-ids.h'''
 
#define USB_PID_AVERMEDIA_A918R 0x0918
 
#define USB_PID_AVERMEDIA_A918R 0x0918
   
'''af9015.c'''
+
'''af9035.c'''
   
enum af9015_usb_table_entry {
+
enum af9035_id_entry {
  +
AF9035_07CA_0918,
AVERTV_A918R,
 
   
[AVERTV_A918R] = {
+
[AF9035_07CA_0918] = {
 
USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A918R)},
 
USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A918R)},
   
 
.devices = {
 
.devices = {
  +
.name = "AVerMedia AverTV A918R",
{
 
  +
.cold_ids = {
.name = "AVerMedia AVerTV HD Express A918R",
 
  +
&af9035_id[AF9035_07CA_0918],
.cold_ids = {
 
  +
},
&af9015_usb_table[AVERTV_A918R],
 
},
 
 
'''Result''':
 
 
# modprobe dvb-usb-af9015 -v
 
insmod /lib/modules/3.5.0-21-generic/kernel/drivers/media/dvb/dvb-usb/dvb-usb.ko
 
ERROR: could not insert 'dvb_usb_af9015': '''Exec format error'''
 
 
# file dvb-usb-af9015.ko
 
dvb-usb-af9015.ko: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV),
 
BuildID[sha1]=0xdd8f226ff1ef165ce8f099889940955310be6e02, not stripped
 
 
# dmesg
 
kernel [ 6346.104417] dvb_usb: disagrees about version of symbol module_layout
 
 
=> no idea how to solve "ERROR: could not insert 'dvb_usb_af9015': Exec format error"
 
 
== Step 3 ==
 
Compilation success with kernel 3.5.0-21 and files modification step 2
 
 
# '''modprobe -v''' dvb_usb_af9015
 
insmod /lib/modules/3.5.0-21-generic/kernel/drivers/media/rc/rc-core.ko
 
insmod /lib/modules/3.5.0-21-generic/kernel/drivers/media/dvb/dvb-core/dvb-core.ko
 
insmod /lib/modules/3.5.0-21-generic/kernel/drivers/media/dvb/dvb-usb/dvb-usb.ko
 
insmod /lib/modules/3.5.0-21-generic/kernel/drivers/media/dvb/dvb-usb/dvb-usb-af9015.ko
 
 
# '''dmesg'''
 
af9015: recv bulk message failed:-110
 
af9015: recv bulk message failed:-110
 
af9015: recv bulk message failed:-110
 
af9015: recv bulk message failed:-110
 
af9015: eeprom read failed=-1
 
dvb_usb_af9015: probe of 2-1.3:1.0 failed with error -1
 
usbcore: registered new interface driver dvb_usb_af9015
 
 
------------------------------------
 
= Current status =
 
AverTV A918R needs some deeper investigations.
 
If someone knows how to make some further test, please advise.
 
 
Thanks.
 

Revision as of 01:14, 29 December 2012

Following source files need to be updated:

dvb-usb-ids.h

#define USB_PID_AVERMEDIA_A918R   0x0918

af9035.c

 enum af9035_id_entry {
   AF9035_07CA_0918,
[AF9035_07CA_0918] = {
 USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A918R)},
 .devices = {
 .name = "AVerMedia AverTV A918R",
  .cold_ids = {
   &af9035_id[AF9035_07CA_0918],
  },