View previous topic :: View next topic |
Author |
Message |
Lophophora n00b
Joined: 02 Oct 2006 Posts: 27
|
Posted: Tue Jul 26, 2016 9:39 am Post subject: Bluetooth woes on Realtek RTL8821AE |
|
|
Hi all,
A couple of weeks back I did a fresh gentoo installation on my new box and while on general it runs well, I've still not managed to set bluetooth to run. I've got a Realtek RTL8821AE PCI mini card:
Quote: | 01:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8821AE 802.11ac PCIe Wireless Network Adapter
Subsystem: Realtek Semiconductor Co., Ltd. RTL8821AE 802.11ac PCIe Wireless Network Adapter
Flags: bus master, fast devsel, latency 0, IRQ 122
I/O ports at e000 [size=256]
Memory at df000000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Endpoint, MSI 00
Kernel driver in use: rtl8821ae
|
I've followed the gentoo bluetooth guide:
https://wiki.gentoo.org/wiki/Bluetooth
But when I run hciconfig -a, my adaptor is shown as down:
Quote: | hci0: Type: BR/EDR Bus: USB
BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0
DOWN
RX bytes:42 acl:0 sco:0 events:3 errors:0
TX bytes:9 acl:0 sco:0 commands:3 errors:0
Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DH1 HV1
Link policy:
Link mode: SLAVE ACCEPT |
and I get the following error message when I try to wake it:
Quote: | hciconfig hci0 up
Can't init device hci0: No such file or directory (2)
|
Here's my kernel .config file:
http://pastebin.com/zvCKr7FH
and the contents of my make.conf file, in case it helps:
Quote: | # These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CFLAGS="-march=broadwell -O2 -pipe"
CXXFLAGS="${CFLAGS}"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="x86_64-pc-linux-gnu"
# These are the USE and USE_EXPAND flags that were used for
# buidling in addition to what is provided by the profile.
USE="-gnome -kde -minimal -qt4 alsa bindist bluetooth consolekit dbus jpeg lock
nls policykit session ssl startup-notification thunar udev udisks unicode X"
CPU_FLAGS_X86="mmx sse sse2"
MAKEOPTS="-j9"
PORTDIR="/usr/portage"
DISTDIR="${PORTDIR}/distfiles"
PKGDIR="${PORTDIR}/packages"
INPUT_DEVICES="evdev"
VIDEO_CARDS="intel i965"
GENTOO_MIRRORS="http://mirror.bytemark.co.uk/gentoo/ http://www.mirrorservice.or
g/sites/distfiles.gentoo.org/"
LINGUAS="en_GB" |
Thanks in advance for your help! |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 30905 Location: here
|
Posted: Tue Jul 26, 2016 9:56 am Post subject: |
|
|
Log of dmesg:
Code: | $ dmesg | grep -i bluetooth |
_________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
Lophophora n00b
Joined: 02 Oct 2006 Posts: 27
|
Posted: Tue Jul 26, 2016 11:24 am Post subject: |
|
|
Thanks, I need to learn to look at dmesg more often! It seems like the firmware isn't loading:
Quote: | dmesg | grep -i bluetooth
[ 0.160970] Bluetooth: Core ver 2.21
[ 0.161143] Bluetooth: HCI device and connection manager initialized
[ 0.161232] Bluetooth: HCI socket layer initialized
[ 0.161320] Bluetooth: L2CAP socket layer initialized
[ 0.161410] Bluetooth: SCO socket layer initialized
[ 0.816716] Bluetooth: HCI UART driver ver 2.3
[ 0.816718] Bluetooth: HCI UART protocol H4 registered
[ 0.817603] Bluetooth: RFCOMM socket layer initialized
[ 0.817611] Bluetooth: RFCOMM ver 1.11
[ 0.817620] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 0.817624] Bluetooth: HIDP socket layer initialized
[ 1.658412] usb 1-11: Product: Bluetooth Radio
[ 1.669757] Bluetooth: hci0: rtl: examining hci_ver=06 hci_rev=000a lmp_ver=06 lmp_subver=8821
[ 1.669759] Bluetooth: hci0: rtl: loading rtl_bt/rtl8821a_fw.bin
[ 1.669767] bluetooth hci0: Direct firmware load for rtl_bt/rtl8821a_fw.bin failed with error -2
[ 1.669768] Bluetooth: hci0: Failed to load rtl_bt/rtl8821a_fw.bin
|
does anyone have experience with Realtek? Can I use non-kernel firmware?
Thanks! |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 30905 Location: here
|
Posted: Tue Jul 26, 2016 11:59 am Post subject: |
|
|
Lophophora wrote: | Thanks, I need to learn to look at dmesg more often! It seems like the firmware isn't loading: |
You have installed linux-firmware package?
Lophophora wrote: | Can I use non-kernel firmware? |
Difference between driver and firmware. _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
Lophophora n00b
Joined: 02 Oct 2006 Posts: 27
|
Posted: Tue Jul 26, 2016 3:50 pm Post subject: |
|
|
Hi,
I just installed linux-firmware & restarted but I still get the same error. Is there some configuration I need to do? |
|
Back to top |
|
|
Logicien Veteran
Joined: 16 Sep 2005 Posts: 1555 Location: Montréal
|
Posted: Tue Jul 26, 2016 4:50 pm Post subject: |
|
|
From your .config, any Bluetooth option you enable is in the kernel image [Y]. If your kernel probe the Bluetooth devices before the real root partition is mounted, the firmware files needed will not be available. This can lead to a probe fail unless you put the firmware files in the kernel image too or in an initramfs.
What I do for the kernel configuration is to put everything not mandatory to be in the kernel image as modules. Bluetooth support is not mandatory to be in the kernel image unless an option have only this choice in which case, I accept it. So, because modules are in the root filesystem like firmware files, when the kernel load a module, the firmware file are available too if they are emerged. You can see the problem I am talking about in the output
Quote: | [ 1.669759] Bluetooth: hci0: rtl: loading rtl_bt/rtl8821a_fw.bin
[ 1.669767] bluetooth hci0: Direct firmware load for rtl_bt/rtl8821a_fw.bin failed with error -2
[ 1.669768] Bluetooth: hci0: Failed to load rtl_bt/rtl8821a_fw.bin |
Support in the kernel image need to have the firmware files in the image too and modules in intiramfs need to have the firmware files in the initramfs too. This is a rule of thumb for me. In plus, for Bluetooth, I enable every option of the section.
Your wifi module do not have any parameter for Bluetooth coexistence. I never had any trouble with Wifi/Bluetooth mini-Pci devices. _________________ Paul |
|
Back to top |
|
|
Lophophora n00b
Joined: 02 Oct 2006 Posts: 27
|
Posted: Tue Jul 26, 2016 6:38 pm Post subject: |
|
|
Thanks for your help! I'm afraid it wasn't a module vs built in the kernel issue. I recompiled my kernel and loaded the following modules at boot-time:
Quote: |
hidp
rfcomm
bluetooth
btcoexist
rtl_pci
rtl8821ae
rtlwifi
hci_uart
btrtl
btusb
btintel
|
I still get the same error messages, i.e.:
Quote: |
dmesg | grep -i bluetooth
[ 1.650312] usb 1-11: Product: Bluetooth Radio
[ 5.321796] Bluetooth: Core ver 2.21
[ 5.321807] Bluetooth: HCI device and connection manager initialized
[ 5.321809] Bluetooth: HCI socket layer initialized
[ 5.321811] Bluetooth: L2CAP socket layer initialized
[ 5.321814] Bluetooth: SCO socket layer initialized
[ 5.455858] Bluetooth: hci0: rtl: examining hci_ver=06 hci_rev=000a lmp_ver=06 lmp_subver=8821
[ 5.455859] Bluetooth: hci0: rtl: loading rtl_bt/rtl8821a_fw.bin
[ 5.455869] bluetooth hci0: Direct firmware load for rtl_bt/rtl8821a_fw.bin failed with error -2
[ 5.455870] Bluetooth: hci0: Failed to load rtl_bt/rtl8821a_fw.bin
[ 13.353061] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 13.353064] Bluetooth: HIDP socket layer initialized
[ 13.364653] Bluetooth: RFCOMM socket layer initialized
[ 13.364657] Bluetooth: RFCOMM ver 1.11
[ 13.423580] Bluetooth: HCI UART driver ver 2.3
[ 13.423581] Bluetooth: HCI UART protocol H4 registered
[ 91.607166] Bluetooth: hci0: rtl: examining hci_ver=06 hci_rev=000a lmp_ver=06 lmp_subver=8821
[ 91.607183] Bluetooth: hci0: rtl: loading rtl_bt/rtl8821a_fw.bin
[ 91.607222] bluetooth hci0: Direct firmware load for rtl_bt/rtl8821a_fw.bin failed with error -2
[ 91.607224] Bluetooth: hci0: Failed to load rtl_bt/rtl8821a_fw.bin
|
Could you please elaborate what you mean by this:
Quote: | Your wifi module do not have any parameter for Bluetooth coexistence |
Any other ideas?
Thanks in advance! |
|
Back to top |
|
|
|