Erreur Compilation RT3298 + modification noyau

Erreur Compilation RT3298 + modification noyau - Divers - Linux et OS Alternatifs

Marsh Posté le 03-04-2014 à 22:17:56    

Bonjour,
 
J'aimerais avoir un peu d'aide concernant mon installation.
 
J'ai installé une debian Jessie sur un "pc" comportant une carte PCIe combo Wifi + Bluetooth.
Pour la partie Wifi aucun problème, j'ai trouvé le driver rt3290 et l'ai copié dans /lib/firmware.
 
Pour la partie Bluetooth c'est plus compliqué car rien n'est natif de ce coté.
 
Lors de la compilation du driver rtbth 3.9.3, j'ai l'erreur suivante :
 

Citation :

sudo dkms install -m rtbth -v 3.9.3
 
Kernel preparation unnecessary for this kernel.  Skipping...
 
Building module:
cleaning build area....
make KERNELRELEASE=3.13-1-686-pae -C src/ LINUX_SRC=/lib/modules/3.13-1-686-pae/build........(bad exit status: 2)
Error! Bad return status for module build on kernel: 3.13-1-686-pae (i686)
Consult /var/lib/dkms/rtbth/3.9.3/build/make.log for more information.
root@debian:/usr/src# cat /var/lib/dkms/rtbth/3.9.3/build/make.log
DKMS make.log for rtbth-3.9.3 for kernel 3.13-1-686-pae (i686)
jeudi 3 avril 2014, 21:12:51 (UTC+0200)
make: entrant dans le répertoire « /var/lib/dkms/rtbth/3.9.3/build/src »
make -C /lib/modules/3.13-1-686-pae/build M=/var/lib/dkms/rtbth/3.9.3/build/src modules
make[1]: entrant dans le répertoire « /usr/src/linux-headers-3.13-1-686-pae »
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_main.o
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_init.o
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_init.c: In function ‘Rtbth_Set_Radio_Led’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_init.c:1185:3: warning: typedef ‘flag_t’ locally defined but not used [-Wunused-local-typedefs]
 } flag_t;
   ^
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_pci.o
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_pci.c: In function ‘rtbt_pci_probe’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_pci.c:198:1: warning: label ‘err_hps_iface’ defined but not used [-Wunused-label]
 err_hps_iface:
 ^
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.o
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c: In function ‘rtbt_hci_dev_receive’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:216:2: warning: passing argument 1 of ‘hci_recv_frame’ from incompatible pointer type [enabled by default]
  status = hci_recv_frame(skb);
  ^
In file included from /var/lib/dkms/rtbth/3.9.3/build/src/include/hps_bluez.h:32:0,
                 from /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:29:
/usr/src/linux-headers-3.13-1-common/include/net/bluetooth/hci_core.h:768:5: note: expected ‘struct hci_dev *’ but argument is of type ‘struct sk_buff *’
 int hci_recv_frame(struct hci_dev *hdev, struct sk_buff *skb);
     ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:216:2: error: too few arguments to function ‘hci_recv_frame’
  status = hci_recv_frame(skb);
  ^
In file included from /var/lib/dkms/rtbth/3.9.3/build/src/include/hps_bluez.h:32:0,
                 from /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:29:
/usr/src/linux-headers-3.13-1-common/include/net/bluetooth/hci_core.h:768:5: note: declared here
 int hci_recv_frame(struct hci_dev *hdev, struct sk_buff *skb);
     ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c: In function ‘rtbt_hps_iface_init’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:404:13: warning: assignment from incompatible pointer type [enabled by default]
  hdev->send = rtbt_hci_dev_send;
             ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:406:6: error: ‘struct hci_dev’ has no member named ‘ioctl’
  hdev->ioctl = rtbt_hci_dev_ioctl;
      ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c: At top level:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:83:20: warning: ‘pkt_type_str’ defined but not used [-Wunused-variable]
 static const char *pkt_type_str[]=
                    ^
make[4]: *** [/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.o] Erreur 1
make[3]: *** [_module_/var/lib/dkms/rtbth/3.9.3/build/src] Erreur 2
make[2]: *** [sub-make] Erreur 2
make[1]: *** [all] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-headers-3.13-1-686-pae »
make: *** [all] Erreur 2
make: quittant le répertoire « /var/lib/dkms/rtbth/3.9.3/build/src »


 
 
et nottament :
 

Citation :

/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:406:6: error: ‘struct hci_dev’ has no member named ‘ioctl’
  hdev->ioctl = rtbt_hci_dev_ioctl;


 
En faisant des recherches, je suis tombé sur cette page :
 
http://marc.info/?l=git-commits-he [...] 019450&w=2
 
Qui m'indique que hdev->ioctl a purement et simplement été supprimé car aucun driver Bluetooth ne l'utilise.
 
J'ai envoyé un mail à l'auteur, mais vu que je n'ai aucune idée du temps que je vais attendre avant d'avoir une réponse, ni du temps que ce soit pris en compte si ça l'est un jour, j'aimerais essayer de faire quelque chose.
 
Vu qu'il y a très peu de modification dans ce commit, es-ce que quelqu'un pourrait m’orienter sur la marche a suivre pour réintégrer hdev->ioctl dans mon noyau ?
 
Merci.

Reply

Marsh Posté le 03-04-2014 à 22:17:56   

Reply

Marsh Posté le 10-05-2014 à 05:35:26    

Bonjour,
 
Je suis arrivé aujourd'hui exactement au même point que toi, en recherche de solution qui m'amène sur ce post. Du nouveau depuis ? As-tu finalement réussi à compiler le firmware ? à faire fonctionner ton BT ? Si oui, comment as-tu dépassé le problème ?
 
Merci des réponses.
 
Philippe
 

tbotw a écrit :

Bonjour,
 
J'aimerais avoir un peu d'aide concernant mon installation.
 
J'ai installé une debian Jessie sur un "pc" comportant une carte PCIe combo Wifi + Bluetooth.
Pour la partie Wifi aucun problème, j'ai trouvé le driver rt3290 et l'ai copié dans /lib/firmware.
 
Pour la partie Bluetooth c'est plus compliqué car rien n'est natif de ce coté.
 
Lors de la compilation du driver rtbth 3.9.3, j'ai l'erreur suivante :
 

Citation :

sudo dkms install -m rtbth -v 3.9.3
 
Kernel preparation unnecessary for this kernel.  Skipping...
 
Building module:
cleaning build area....
make KERNELRELEASE=3.13-1-686-pae -C src/ LINUX_SRC=/lib/modules/3.13-1-686-pae/build........(bad exit status: 2)
Error! Bad return status for module build on kernel: 3.13-1-686-pae (i686)
Consult /var/lib/dkms/rtbth/3.9.3/build/make.log for more information.
root@debian:/usr/src# cat /var/lib/dkms/rtbth/3.9.3/build/make.log
DKMS make.log for rtbth-3.9.3 for kernel 3.13-1-686-pae (i686)
jeudi 3 avril 2014, 21:12:51 (UTC+0200)
make: entrant dans le répertoire « /var/lib/dkms/rtbth/3.9.3/build/src »
make -C /lib/modules/3.13-1-686-pae/build M=/var/lib/dkms/rtbth/3.9.3/build/src modules
make[1]: entrant dans le répertoire « /usr/src/linux-headers-3.13-1-686-pae »
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_main.o
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_init.o
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_init.c: In function ‘Rtbth_Set_Radio_Led’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_init.c:1185:3: warning: typedef ‘flag_t’ locally defined but not used [-Wunused-local-typedefs]
 } flag_t;
   ^
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_pci.o
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_pci.c: In function ‘rtbt_pci_probe’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_pci.c:198:1: warning: label ‘err_hps_iface’ defined but not used [-Wunused-label]
 err_hps_iface:
 ^
  CC [M]  /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.o
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c: In function ‘rtbt_hci_dev_receive’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:216:2: warning: passing argument 1 of ‘hci_recv_frame’ from incompatible pointer type [enabled by default]
  status = hci_recv_frame(skb);
  ^
In file included from /var/lib/dkms/rtbth/3.9.3/build/src/include/hps_bluez.h:32:0,
                 from /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:29:
/usr/src/linux-headers-3.13-1-common/include/net/bluetooth/hci_core.h:768:5: note: expected ‘struct hci_dev *’ but argument is of type ‘struct sk_buff *’
 int hci_recv_frame(struct hci_dev *hdev, struct sk_buff *skb);
     ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:216:2: error: too few arguments to function ‘hci_recv_frame’
  status = hci_recv_frame(skb);
  ^
In file included from /var/lib/dkms/rtbth/3.9.3/build/src/include/hps_bluez.h:32:0,
                 from /var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:29:
/usr/src/linux-headers-3.13-1-common/include/net/bluetooth/hci_core.h:768:5: note: declared here
 int hci_recv_frame(struct hci_dev *hdev, struct sk_buff *skb);
     ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c: In function ‘rtbt_hps_iface_init’:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:404:13: warning: assignment from incompatible pointer type [enabled by default]
  hdev->send = rtbt_hci_dev_send;
             ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:406:6: error: ‘struct hci_dev’ has no member named ‘ioctl’
  hdev->ioctl = rtbt_hci_dev_ioctl;
      ^
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c: At top level:
/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:83:20: warning: ‘pkt_type_str’ defined but not used [-Wunused-variable]
 static const char *pkt_type_str[]=
                    ^
make[4]: *** [/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.o] Erreur 1
make[3]: *** [_module_/var/lib/dkms/rtbth/3.9.3/build/src] Erreur 2
make[2]: *** [sub-make] Erreur 2
make[1]: *** [all] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-headers-3.13-1-686-pae »
make: *** [all] Erreur 2
make: quittant le répertoire « /var/lib/dkms/rtbth/3.9.3/build/src »


 
 
et nottament :
 

Citation :

/var/lib/dkms/rtbth/3.9.3/build/src/rtbth_core_bluez.c:406:6: error: ‘struct hci_dev’ has no member named ‘ioctl’
  hdev->ioctl = rtbt_hci_dev_ioctl;


 
En faisant des recherches, je suis tombé sur cette page :
 
http://marc.info/?l=git-commits-he [...] 019450&w=2
 
Qui m'indique que hdev->ioctl a purement et simplement été supprimé car aucun driver Bluetooth ne l'utilise.
 
J'ai envoyé un mail à l'auteur, mais vu que je n'ai aucune idée du temps que je vais attendre avant d'avoir une réponse, ni du temps que ce soit pris en compte si ça l'est un jour, j'aimerais essayer de faire quelque chose.
 
Vu qu'il y a très peu de modification dans ce commit, es-ce que quelqu'un pourrait m’orienter sur la marche a suivre pour réintégrer hdev->ioctl dans mon noyau ?
 
Merci.


Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed