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

From LinuxTVWiki
Jump to: navigation, search
Line 1: Line 1:
After some days of investigations without any success, conclusion is:
+
Following source files need to be updated:
 
+
!!  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 {
  AVERTV_A918R,
+
    AF9035_07CA_0918,
  
  [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",
   .name = "AVerMedia AVerTV HD Express A918R",
+
  .cold_ids = {
  .cold_ids = {
+
    &af9035_id[AF9035_07CA_0918],
  &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],
  },