RT3290 Bluetooth (rtbth) driver with Kernel >= 3.13 + PATCH!

NOTE Most of users here tell me that this doesn’t work (bluetooth detected and on, but no pairing or connection). There is a bug report still ongoing to resolve this issue.

In my previous post, I did compiled and installed this source coded driver from Ubuntu PPA without any hassle with my previous Ubuntu 12.04 LTS (Kernel 3.8.x). But after an-hour-long upgrade process to Ubuntu 14.04 LTS (with newer Kernel 3.13), I need to recompile (make clean; make) this driver but unfortunately it failed and I got this message :

/usr/src/rtbth-3.9.3/rtbth_core_bluez.c: In function ‘rtbt_hps_iface_init’:
/usr/src/rtbth-3.9.3/rtbth_core_bluez.c:404:13: warning: assignment from incompatible pointer type [enabled by default]
  hdev->send = rtbt_hci_dev_send;
/usr/src/rtbth-3.9.3/rtbth_core_bluez.c:406:6: error: ‘struct hci_dev’ has no member named ‘ioctl’
  hdev->ioctl = rtbt_hci_dev_ioctl;
/usr/src/rtbth-3.9.3/rtbth_core_bluez.c: At top level:
/usr/src/rtbth-3.9.3/rtbth_core_bluez.c:83:20: warning: ‘pkt_type_str’ defined but not used [-Wunused-variable]
 static const char *pkt_type_str[]=
make[2]: *** [/usr/src/rtbth-3.9.3/rtbth_core_bluez.o] Error 1
make[1]: *** [_module_/usr/src/rtbth-3.9.3] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-24-generic'
make: *** [all] Error 2

Read More