Bluetooth USB Dongle Not Working

We build kernel following this article. After I plugged in this Bluetooth USB dongle into colibri eval board, I executed the following commands. The “lsusb” command does not return device description. The “hciconfig hci0 up” command returns “No such device” error.

root@colibri-imx6:~# lsusb
Bus 001 Device 004: ID 2458:0001
Bus 001 Device 002: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@colibri-imx6:~# systemctl enable bluetooth.service
root@colibri-imx6:~# systemctl start bluetooth.service
root@colibri-imx6:~# hciconfig
root@colibri-imx6:~# hciconfig hci0 up
Can't get device info: No such device

What am I missing?

Hm, showing it up in lsusb is no prove yet whether the driver has been loaded… You should usually get some kind of information in the kernel log. Can you share the output of dmesg?

Sometimes also rfkill is involved, you can check with:

rfkill list
rfkill unblock bluetooth
root@colibri-imx6:~# rfkill list
root@colibri-imx6:~# rfkill unblock bluetooth
root@colibri-imx6:~# dmesg
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.1.39-dirty (wz@wz-VirtualBox) (gcc version 4.9.3 20141031 (prerelease) (Linaro GCC 2014.11) ) #11 SMP Wed Aug 30 10:21:41 MDT 2017
[    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: Toradex Colibri iMX6DL/S on Colibri Evaluation Board V3
[    0.000000] Reserved memory: failed to allocate memory for node 'linux,cma'
[    0.000000] cma: Reserved 128 MiB at 0x18000000
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 65536
[    0.000000] free_area_init_node: node 0, pgdat 8096e2c0, node_mem_map 87db7000
[    0.000000]   Normal zone: 512 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 65536 pages, LIFO batch:15
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] PERCPU: Embedded 12 pages/cpu @87d7f000 s16640 r8192 d24320 u49152
[    0.000000] pcpu-alloc: s16640 r8192 d24320 u49152 alloc=12*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
[    0.000000] Kernel command line: enable_wait_mode=off galcore.contiguousSize=50331648 ip=off root=/dev/mmcblk0p2 rw,noatime rootfstype=ext3 rootwait fec_mac=00:14:2d:4d:c7:b1 consoleblank=0 no_console_suspend=1 console=tty1 console=ttymxc0,115200n8 video=mxcfb0:dev=lcd,640x480M@60,if=RGB666 video=mxcfb1:off fbmem=8M
[    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Memory: 118204K/262144K available (6919K kernel code, 237K rwdata, 2136K rodata, 332K init, 417K bss, 12868K reserved, 131072K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0x90800000 - 0xff000000   (1768 MB)
[    0.000000]     lowmem  : 0x80000000 - 0x90000000   ( 256 MB)
[    0.000000]     pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)
[    0.000000]     modules : 0x7f000000 - 0x7fe00000   (  14 MB)
[    0.000000]       .text : 0x80008000 - 0x808e001c   (9057 kB)
[    0.000000]       .init : 0x808e1000 - 0x80934000   ( 332 kB)
[    0.000000]       .data : 0x80934000 - 0x8096f420   ( 238 kB)
[    0.000000]        .bss : 0x8096f420 - 0x809d7a84   ( 418 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  Additional per-CPU info printed with stalls.
[    0.000000]  RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] L2C-310 erratum 769419 enabled
[    0.000000] L2C-310 enabling early BRESP for Cortex-A9
[    0.000000] L2C-310 full line of zeros enabled for Cortex-A9
[    0.000000] L2C-310 ID prefetch enabled, offset 16 lines
[    0.000000] L2C-310 dynamic clock gating enabled, standby mode enabled
[    0.000000] L2C-310 cache controller enabled, 16 ways, 512 kB
[    0.000000] L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76450001
[    0.000000] mxc_clocksource_init 3000000
[    0.000000] Switching to timer-based delay loop, resolution 333ns
[    0.000007] sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 715827882841ns
[    0.000025] clocksource mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 637086815595 ns
[    0.001028] Console: colour dummy device 80x30
[    0.001678] console [tty1] enabled
[    0.001704] Calibrating delay loop (skipped), value calculated using timer frequency.. 6.00 BogoMIPS (lpj=30000)
[    0.001744] pid_max: default: 32768 minimum: 301
[    0.001854] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.001884] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.002452] Initializing cgroup subsys freezer
[    0.002489] Initializing cgroup subsys debug
[    0.002526] CPU: Testing write buffer coherency: ok
[    0.002830] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.002914] Setting up static identity map for 0x10008280 - 0x100082d8
[    0.004569] Brought up 1 CPUs
[    0.004597] SMP: Total of 1 processors activated (6.00 BogoMIPS).
[    0.004622] CPU: All CPU(s) started in SVC mode.
[    0.005047] devtmpfs: initialized
[    0.017223] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
[    0.017649] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.017702] futex hash table entries: 512 (order: 3, 32768 bytes)
[    0.023320] pinctrl core: initialized pinctrl subsystem
[    0.024414] NET: Registered protocol family 16
[    0.031674] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.032551] cpuidle: using governor ladder
[    0.032584] cpuidle: using governor menu
[    0.032888] CPU identified as i.MX6DL, silicon rev 1.3
[    0.055056] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
[    0.055100] hw-breakpoint: maximum watchpoint size is 4 bytes.
[    0.057751] imx6dl-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
[    0.058957] imx-gpc 20dc000.gpc: no fsl,ldo-bypass found!
[    0.071369] SCSI subsystem initialized
[    0.071697] usbcore: registered new interface driver usbfs
[    0.071784] usbcore: registered new interface driver hub
[    0.071921] usbcore: registered new device driver usb
[    0.072133] 2000000.aips-bus:usbphy_nop1 supply vcc not found, using dummy regulator
[    0.072289] 2000000.aips-bus:usbphy_nop2 supply vcc not found, using dummy regulator
[    0.073177] i2c-gpio i2c@0: using pins 109 (SDA) and 108 (SCL)
[    0.075040] stmpe-i2c 1-0041: stmpe811 detected, chip id: 0x811
[    0.077018] i2c i2c-1: IMX I2C adapter registered
[    0.077057] i2c i2c-1: can't use DMA
[    0.077761] i2c i2c-2: IMX I2C adapter registered
[    0.077795] i2c i2c-2: can't use DMA
[    0.077935] Linux video capture interface: v2.00
[    0.078006] pps_core: LinuxPPS API ver. 1 registered
[    0.078029] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.078084] PTP clock support registered
[    0.090479] imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
[    0.091615] MIPI CSI2 driver module loaded
[    0.091806] Advanced Linux Sound Architecture Driver Initialized.
[    0.093115] Bluetooth: Core ver 2.20
[    0.093178] NET: Registered protocol family 31
[    0.093201] Bluetooth: HCI device and connection manager initialized
[    0.093231] Bluetooth: HCI socket layer initialized
[    0.093256] Bluetooth: L2CAP socket layer initialized
[    0.093300] Bluetooth: SCO socket layer initialized
[    0.093867] Switched to clocksource mxc_timer1
[    0.104227] NET: Registered protocol family 2
[    0.104993] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[    0.105045] TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
[    0.105098] TCP: Hash tables configured (established 2048 bind 2048)
[    0.105170] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.105209] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.105391] NET: Registered protocol family 1
[    0.105679] RPC: Registered named UNIX socket transport module.
[    0.105709] RPC: Registered udp transport module.
[    0.105730] RPC: Registered tcp transport module.
[    0.105749] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.106484] CPU PMU: Failed to parse /soc/pmu/interrupt-affinity[0]
[    0.106547] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
[    0.108124] Bus freq driver module loaded
[    0.115327] VFS: Disk quotas dquot_6.6.0
[    0.115536] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.116663] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.117366] NFS: Registering the id_resolver key type
[    0.117417] Key type id_resolver registered
[    0.117440] Key type id_legacy registered
[    0.117482] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.118011] ntfs: driver 2.1.32 [Flags: R/W].
[    0.118487] fuse init (API version 7.23)
[    0.123196] io scheduler noop registered
[    0.123233] io scheduler deadline registered
[    0.123416] io scheduler cfq registered (default)
[    0.125413] imx-weim 21b8000.weim: Driver registered.
[    0.127549] backlight supply power not found, using dummy regulator
[    0.129347] 20e0000.hdmi_video supply HDMI not found, using dummy regulator
[    0.130650] fbcvt: 640x480@60: CVT Name - .307M3
[    0.130695] mxc_sdc_fb fb@0: registered mxc display driver lcd
[    0.132261] mxc_sdc_fb fb@0: 640x480 h_sync,r,l: 64,16,80  v_sync,l,u: 4,3,13 pixclock=23750000 Hz
[    0.178125] mxc_sdc_fb fb@0: 640x480 h_sync,r,l: 64,16,80  v_sync,l,u: 4,3,13 pixclock=23750000 Hz
[    0.197666] Console: switching to colour frame buffer device 80x30
[    0.237861] mxc_sdc_fb fb@1: mxcfb1 is turned off!
[    0.240909] imx-sdma 20ec000.sdma: no iram assigned, using external mem
[    0.242988] imx-sdma 20ec000.sdma: no event needs to be remapped
[    0.245188] imx-sdma 20ec000.sdma: loaded firmware 3.3
[    0.249799] imx-sdma 20ec000.sdma: initialized
[    0.253272] pfuze100-regulator 1-0008: Full layer: 2, Metal layer: 1
[    0.255751] pfuze100-regulator 1-0008: FAB: 0, FIN: 0
[    0.257542] pfuze100-regulator 1-0008: pfuze100 found.
[    0.273759] 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 24, base_baud = 5000000) is a IMX
[    1.125332] console [ttymxc0] enabled
[    1.131733] 21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 296, base_baud = 5000000) is a IMX
[    1.144854] 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 297, base_baud = 5000000) is a IMX
[    1.158471] [drm] Initialized drm 1.1.0 20060810
[    1.165613] [drm] Initialized vivante 1.0.0 20120216 on minor 0
[    1.182603] brd: module loaded
[    1.192554] loop: module loaded
[    1.199549] spi_imx 2014000.ecspi: probed
[    1.206509] vcan: Virtual CAN interface driver
[    1.212823] CAN device driver interface
[    1.218644] spi3.0 supply vdd not found, using dummy regulator
[    1.226369] spi3.0 supply xceiver not found, using dummy regulator
[    1.246505] 2188000.ethernet supply phy not found, using dummy regulator
[    1.255540] pps pps0: new PPS source ptp0
[    1.265438] libphy: fec_enet_mii_bus: probed
[    1.272049] fec 2188000.ethernet eth0: registered PHC device 0
[    1.280078] usbcore: registered new interface driver asix
[    1.287448] usbcore: registered new interface driver ax88179_178a
[    1.295441] usbcore: registered new interface driver cdc_ether
[    1.303097] usbcore: registered new interface driver net1080
[    1.310657] usbcore: registered new interface driver cdc_subset
[    1.318360] usbcore: registered new interface driver zaurus
[    1.325670] usbcore: registered new interface driver cdc_ncm
[    1.332893] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.341026] ehci-mxc: Freescale On-Chip EHCI Host driver
[    1.348138] usbcore: registered new interface driver usblp
[    1.355256] usbcore: registered new interface driver usb-storage
[    1.362811] usbcore: registered new interface driver usbserial
[    1.370100] usbcore: registered new interface driver usbserial_generic
[    1.378052] usbserial: USB Serial support registered for generic
[    1.385496] usbcore: registered new interface driver ftdi_sio
[    1.392649] usbserial: USB Serial support registered for FTDI USB Serial Device
[    1.402817] usbcore: registered new interface driver pl2303
[    1.409944] usbserial: USB Serial support registered for pl2303
[    1.418594] 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
[    1.429792] imx_usb 2184000.usb: Can't register ci_hdrc platform device, err=-517
[    1.443947] ci_hdrc ci_hdrc.0: EHCI Host Controller
[    1.450454] ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1
[    1.473906] ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00
[    1.481820] hub 1-0:1.0: USB hub found
[    1.487342] hub 1-0:1.0: 1 port detected
[    1.494040] mousedev: PS/2 mouse device common for all mice
[    1.510040] input: stmpe-ts as /devices/soc0/soc/2100000.aips-bus/21a4000.i2c/i2c-1/1-0041/stmpe-ts/input/input0
[    1.527465] rtc-ds1307 2-0068: rtc core: registered m41t0 as rtc0
[    1.536259] snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r as rtc1
[    1.548987] i2c /dev entries driver
[    1.555720] mxc_v4l2_output v4l2_out: V4L2 device registered as video16
[    1.564645] mxc_v4l2_output v4l2_out: V4L2 device registered as video17
[    1.574903] imx2-wdt 20bc000.wdog: timeout 60 sec (nowayout=0)
[    1.583019] usbcore: registered new interface driver btusb
[    1.590924] sdhci: Secure Digital Host Controller Interface driver
[    1.599180] sdhci: Copyright(c) Pierre Ossman
[    1.605540] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.614179] /soc/aips-bus@02100000/usdhc@02190000: voltage-ranges unspecified
[    1.623389] sdhci-esdhc-imx 2190000.usdhc: Got CD GPIO
[    1.631840] sdhci-esdhc-imx 2190000.usdhc: No vqmmc regulator found
[    1.684148] mmc1: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA
[    1.698018] /soc/aips-bus@02100000/usdhc@02198000: voltage-ranges unspecified
[    1.707524] sdhci-esdhc-imx 2198000.usdhc: No vqmmc regulator found
[    1.753904] mmc0: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA
[    1.777589] mxc_vpu 2040000.vpu_fsl: VPU initialized
[    1.789409] mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed
[    1.805852] usb 1-1: new high-speed USB device number 2 using ci_hdrc
[    1.816614] galcore: clk_get vg clock failed, disable vg!
[    1.824405] Galcore version 5.0.11.41671
[    1.953981] caam 2100000.caam: Entropy delay = 3200
[    2.021687] caam 2100000.caam: Instantiated RNG4 SH0
[    2.082449] caam 2100000.caam: Instantiated RNG4 SH1
[    2.089374] caam 2100000.caam: device ID = 0x0a16010000000100 (Era -524)
[    2.098102] caam 2100000.caam: job rings = 2, qi = 0
[    2.105053] mmc0: MAN_BKOPS_EN bit is not set
[    2.129043] caam algorithms registered in /proc/crypto
[    2.139546] mmc0: new DDR MMC card at address 0001
[    2.147336] hub 1-1:1.0: USB hub found
[    2.153854] hub 1-1:1.0: 4 ports detected
[    2.159851] mmcblk0: mmc0:0001 Q2J54A 3.59 GiB
[    2.168160] mmcblk0boot0: mmc0:0001 Q2J54A partition 1 16.0 MiB
[    2.176651] mmcblk0boot1: mmc0:0001 Q2J54A partition 2 16.0 MiB
[    2.185858] caam_jr 2101000.jr0: registering rng-caam
[    2.195711]  mmcblk0: p1 p2
[    2.200742] snvs-secvio 20cc000.caam-snvs: can't get snvs clock
[    2.210053] snvs-secvio 20cc000.caam-snvs: violation handlers armed - non-secure state
[    2.221555] hidraw: raw HID events driver (C) Jiri Kosina
[    2.228934] usbcore: registered new interface driver usbhid
[    2.236196] usbhid: USB HID core driver
[    2.247268] stmpe-adc stmpe-adc: Initialized
[    2.256228] sgtl5000 1-000a: sgtl5000 revision 0x11
[    2.289725] fsl-hdmi-dai soc:hdmi_audio@00120000: failed to probe. Load HDMI-video first.
[    2.301138] fsl-hdmi-dai: probe of soc:hdmi_audio@00120000 failed with error -12
[    2.312974] sgtl5000 1-000a: Using internal LDO instead of VDDD
[    2.333237] imx-sgtl5000 sound: sgtl5000 <-> 2028000.ssi mapping ok
[    2.343042] imx-audio-hdmi sound-hdmi: initialize HDMI-audio failed. load HDMI-video first!
[    2.356045] NET: Registered protocol family 10
[    2.363381] NET: Registered protocol family 17
[    2.369767] can: controller area network core (rev 20120528 abi 9)
[    2.377943] NET: Registered protocol family 29
[    2.384334] can: raw protocol (rev 20120528)
[    2.390490] can: broadcast manager protocol (rev 20120528 t)
[    2.398134] can: netlink gateway (rev 20130117) max_hops=1
[    2.405825] Bluetooth: RFCOMM TTY layer initialized
[    2.412657] Bluetooth: RFCOMM socket layer initialized
[    2.419784] Bluetooth: RFCOMM ver 1.11
[    2.425451] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    2.432605] Bluetooth: BNEP filters: protocol multicast
[    2.439663] Bluetooth: BNEP socket layer initialized
[    2.446427] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    2.454154] Bluetooth: HIDP socket layer initialized
[    2.461243] Key type dns_resolver registered
[    2.468887] Registering SWP/SWPB emulation handler
[    2.476940] 2184000.usb supply vbus not found, using dummy regulator
[    2.491641] input: gpio-keys as /devices/soc0/gpio-keys/input/input1
[    2.501504] rtc-ds1307 2-0068: setting system clock to 2017-08-31 17:33:48 UTC (1504200828)
[    2.523661] ALSA device list:
[    2.528438]   #0: imx6-colibri-sgtl5000
[    2.542583] EXT4-fs (mmcblk0p2): mounting ext3 file system using the ext4 subsystem
[    2.554406] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem
[    2.565235] EXT4-fs (mmcblk0p2): write access will be enabled during recovery
[    2.982387] EXT4-fs (mmcblk0p2): recovery complete
[    2.991713] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    3.007370] VFS: Mounted root (ext3 filesystem) readonly on device 179:2.
[    3.016911] devtmpfs: mounted
[    3.022099] Freeing unused kernel memory: 332K (808e1000 - 80934000)
[    3.137091] random: systemd urandom read with 27 bits of entropy available
[    3.154814] systemd[1]: systemd 230 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
[    3.186328] systemd[1]: Detected architecture arm.
[    3.214476] systemd[1]: Set hostname to <colibri-imx6>.
[    3.474487] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    3.504272] systemd[1]: Listening on udev Control Socket.
[    3.549656] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    3.584383] systemd[1]: Listening on Network Service Netlink Socket.
[    3.614338] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    3.644302] systemd[1]: Listening on Journal Socket.
[    3.674118] systemd[1]: Reached target Remote File Systems.
[    3.704477] systemd[1]: Created slice User and Session Slice.
[    3.734777] systemd[1]: Created slice System Slice.
[    3.767884] systemd[1]: Starting Create list of required static device nodes for the current kernel...
[    3.801807] systemd[1]: Starting File System Check on Root Device...
[    3.835969] systemd[1]: Mounting Debug File System...
[    3.852730] systemd[1]: Created slice system-getty.slice.
[    3.872166] systemd[1]: Starting Load Kernel Modules...
[    3.900893] systemd[1]: Starting Setup Virtual Console...
[    3.922666] systemd[1]: Reached target Swap.
[    3.939983] systemd[1]: Mounting Temporary Directory...
[    3.977677] systemd[1]: Listening on udev Kernel Socket.
[    4.015872] systemd[1]: Starting Export GPIOs to user space...
[    4.045086] systemd[1]: Created slice system-serial\x2dgetty.slice.
[    4.074168] systemd[1]: Reached target Paths.
[    4.094339] systemd[1]: Listening on Journal Socket (/dev/log).
[    4.125938] systemd[1]: Starting Journal Service...
[    4.136623] systemd[1]: Reached target Slices.
[    4.156479] systemd[1]: Mounted Debug File System.
[    4.172362] systemd[1]: Mounted Temporary Directory.
[    4.204963] systemd[1]: Started Create list of required static device nodes for the current kernel.
[    4.255113] systemd[1]: Started File System Check on Root Device.
[    4.275432] systemd[1]: Started Load Kernel Modules.
[    4.304997] systemd[1]: Started Setup Virtual Console.
[    4.335366] systemd[1]: Started Export GPIOs to user space.
[    4.364656] systemd[1]: Started Journal Service.
[    4.513740] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    4.717240] systemd-journald[187]: Received request to flush runtime journal from PID 1
[    6.676489] pn54x_dev_init
[    6.680881] pn54x_probe
[    6.684941] pn544 2-0028: FIRM GPIO <OPTIONAL> error getting from OF node
[    6.693336] pn544 2-0028: CLKREQ GPIO <OPTIONAL> error getting from OF node
[    6.868527] using random self ethernet address
[    6.874696] using random host ethernet address
[    7.069728] 2-0028 supply nxp,pn54x-pvdd not found, using dummy regulator
[    7.174529] 2-0028 supply nxp,pn54x-vbat not found, using dummy regulator
[    7.373309] 2-0028 supply nxp,pn54x-pmuvcc not found, using dummy regulator
[    7.508663] 2-0028 supply nxp,pn54x-sevdd not found, using dummy regulator
[    7.674985] fec 2188000.ethernet eth0: Freescale FEC PHY driver [Micrel KSZ8041] (mii_bus:phy_addr=2188000.ethernet:00, irq=-1)
[    7.690906] pn54x_probe: request irq_gpio 40
[    7.696956] pn54x_probe: request ven_gpio 38
[    7.814175] pn54x_probe : requesting IRQ 77
[    7.876992] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[    7.885451] usb0: HOST MAC 00:14:2d:ff:ff:fe
[    7.966479] usb0: MAC 00:14:2d:ff:ff:ff
[    9.443373] configfs-gadget gadget: high-speed config #1: c
[    9.520540] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[    9.898064] mxc_sdc_fb fb@0: 640x480 h_sync,r,l: 64,16,80  v_sync,l,u: 4,3,13 pixclock=23750000 Hz
[    9.948794] mxc_sdc_fb fb@0: 640x480 h_sync,r,l: 64,16,80  v_sync,l,u: 4,3,13 pixclock=23750000 Hz
[    9.998151] mxc_sdc_fb fb@0: 640x480 h_sync,r,l: 64,16,80  v_sync,l,u: 4,3,13 pixclock=23750000 Hz
[   10.048576] mxc_sdc_fb fb@0: 640x480 h_sync,r,l: 64,16,80  v_sync,l,u: 4,3,13 pixclock=23750000 Hz
[   10.475679] mxc_sdc_fb fb@0: 640x480 h_sync,r,l: 64,16,80  v_sync,l,u: 4,3,13 pixclock=23750000 Hz
[   10.674325] fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[   10.682188] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   14.633098] random: nonblocking pool is initialized
[   47.243950] usb 1-1.3: new full-speed USB device number 3 using ci_hdrc
[   47.440030] cdc_acm 1-1.3:1.0: ttyACM0: USB ACM device
[   47.448140] usbcore: registered new interface driver cdc_acm
[   47.453851] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

This particular bluegiga device is not supported this way. Linux should detect it as a ttyACM* device and then you can use bluegiga SDK to control it. Official BGAPI is here:

https://www.silabs.com/products/development-tools/software/bluegiga-bluetooth-smart-software-stack

There is also a python implementation available here:

 https://github.com/mjbrown/bgapi

If you’re doing regular BT stuff, I would recommend getting different bt dongle.

Any BT USB dongles you recommend?

You may find some suggests here and some bring-up notes here. Other than that most experience we have with Wi-Fi integrated Bluetooth chipsets.