Return-Path: MIME-Version: 1.0 In-Reply-To: <00A3687E-050A-469F-98B0-C42F872EFE1C@holtmann.org> References: <00A3687E-050A-469F-98B0-C42F872EFE1C@holtmann.org> From: Peter Robinson Date: Tue, 19 Sep 2017 09:57:31 +0100 Message-ID: Subject: Re: Fedora 27 kernel and RPi3 Bluetooth oops To: Marcel Holtmann Cc: "bluez mailin list (linux-bluetooth@vger.kernel.org)" , Loic Poulain Content-Type: text/plain; charset="UTF-8" List-ID: Hi Marcel, >>> the latest Fedora 27 kernel which has all the RPi3 patches applied does= n=E2=80=99t actually work. It provides this backlog. >>> >>> [ 229.162921] CPU: 1 PID: 582 Comm: kworker/u9:1 Not tainted 4.13.2-30= 0.fc27.armv7hl #1 >>> [ 229.171285] Hardware name: Generic DT based system >>> [ 229.176774] Workqueue: hci0 hci_cmd_work [bluetooth] >>> [ 229.176774] Workqueue: hci0 hci_cmd_work [bluetooth] >>> [ 229.182117] [] (unwind_backtrace) from [] (show_= stack+0x18/0x1c) >>> [ 229.190374] [] (show_stack) from [] (dump_stack+= 0xa0/0xd8) >>> [ 229.198122] [] (dump_stack) from [] (register_lo= ck_class+0x298/0x514) >>> [ 229.206835] [] (register_lock_class) from [] (__= lock_acquire+0xe4/0x1608) >>> [ 229.215952] [] (__lock_acquire) from [] (lock_ac= quire+0x280/0x2dc) >>> [ 229.224386] [] (lock_acquire) from [] (_raw_read= _lock+0x4c/0x5c) >>> [ 229.232740] [] (_raw_read_lock) from [] (hci_uar= t_tx_wakeup+0x1c/0x98 [hci_uart]) >>> [ 229.242725] [] (hci_uart_tx_wakeup [hci_uart]) from [] (hci_uart_send_frame+0x54/0x6c [hci_uart]) >>> [ 229.254485] [] (hci_uart_send_frame [hci_uart]) from [] (hci_send_frame+0xc8/0xf4 [bluetooth]) >>> [ 229.266157] [] (hci_send_frame [bluetooth]) from [] (hci_cmd_work+0xa8/0x124 [bluetooth]) >>> [ 229.277005] [] (hci_cmd_work [bluetooth]) from [= ] (process_one_work+0x43c/0x83c) >>> [ 229.286689] [] (process_one_work) from [] (worke= r_thread+0x290/0x40c) >>> [ 229.295355] [] (worker_thread) from [] (kthread+= 0x14c/0x168) >>> [ 229.303195] [] (kthread) from [] (ret_from_fork+= 0x14/0x24) >>> >>> It results in the first HCI command going through and then every other = failing. >>> >>> =3D Index Info: 00:00:00:00:00:00 (Broadcom Corporation) >>> < HCI Command: Broadcom Update UART Baud Rate (0x3f|0x0018) plen 6 >>> Encoded baud rate: Not used (0x0000) >>> Explicit baud rate: 2000000 Mbps >>>> HCI Event: Command Complete (0x0e) plen 4 >>> Broadcom Update UART Baud Rate (0x3f|0x0018) ncmd 1 >>> Status: Success (0x00) >>> < HCI Command: Reset (0x03|0x0003) plen 0 >>> >>> The HCI Reset command actually times out. >>> >>> [ 231.349802] Bluetooth: hci0 command 0x0c03 tx timeout >>> >>> What we really need is some kernel specific debug tracing when driver c= hange baud rate etc. to show up in btmon. Drivers need the capability to in= sert HCI transport level specifics into monitoring interface. >> >> Thanks for noticing this, I've have that exact backlog sitting there >> to send out but I'd just not got to it yet, let me know if there's >> anything that needs tweaking on the Fedora side or patch. > > does it actually work for you? I didn=E2=80=99t get it running with the F= 27 kernel. I had issues with the initial baud rate using btattach in some c= ases. Does this go away if you use 115200 as max baud rate? No, not yet, I got to the point it would see an interface but that didn't have a MAC address, the patch series has also done something weird with serial consoles that I need to debug. I was wondering if it still needs the newer firmware rev that various distros have pulled in. Peter