Subject: partial bluetooth success on n900 [was Re: bluetooth/uart timeout handling]

From: [email-masked] (Pavel Machek)
Date: Wed, 19 Oct 2016 11:25:06 +0200

Hi!

[Ccing lists.]

> Can you push the patch, which gets further than negotiation into
> some git branch available to me? I tried to apply your patch to
> my code, but it did not work for me.

Ok, I've pushed the branch to kernel.org:

git push git at gitolite.kernel.org:pub/scm/linux/kernel/git/pavel/linux-n900.git bt-2-v4.9:bt-2-v4.9

In retrospect, I did make some changes to dts, they may be neccessary,
too.

If it still does not work, please try with my .config. I'm using
modules here, using this script:

pavel at n900:/my/modules$ cat run2
echo removing...
sudo killall a.out
rmmod nokia_h4p
#rmmod omap_serial
#rmmod serial_core
rmmod hci_uart.ko
#rmmod bcm2048.ko
echo installing...
insmod serial_core.ko
insmod omap-serial.ko
insmod bcm2048.ko
insmod hci_uart.ko
ls -al /dev/ttyO1
sleep 1
stty crtscts < /dev/ttyO1
/my/tui/ofone/a.out &

For the record, dmesg says:

Good luck,
									Pavel

[   30.694274] g_ether gadget: notify connect true
[   30.714080] g_ether gadget: notify speed 425984000
[  127.719146] ssi-protocol ssi-protocol: WAKELINES TEST OK
[  218.542694] of_get_named_gpiod_flags: can't parse 'rts-gpio'
property of node '/ocp at 68000000/serial at 4806c000[0]'
[  218.546264] 4806c000.serial: ttyO1 at MMIO 0x4806c000 (irq = 89,
base_baud = 3000000) is a OMAP UART1
[  218.574157] of_get_named_gpiod_flags: can't parse 'rts-gpio'
property of node '/ocp at 68000000/serial at 49020000[0]'
[  218.574340] 49020000.serial: ttyO2 at MMIO 0x49020000 (irq = 90,
base_baud = 3000000) is a OMAP UART2
[  218.650115] bcm2048: probe
[  218.650177] bcm2048 4806c000.serial:bluetooth: GPIO lookup for
consumer reset
[  218.650177] bcm2048 4806c000.serial:bluetooth: using device tree
for GPIO lookup
[  218.650360] of_get_named_gpiod_flags: parsed 'reset-gpios' property
of node '/ocp at 68000000/serial at 4806c000/bluetooth[0]' - status (0)
[  218.650390] bcm2048 4806c000.serial:bluetooth: GPIO lookup for
consumer host-wakeup
[  218.650421] bcm2048 4806c000.serial:bluetooth: using device tree
for GPIO lookup
[  218.650482] of_get_named_gpiod_flags: parsed 'host-wakeup-gpios'
property of node '/ocp at 68000000/serial at 4806c000/bluetooth[0]' - status
(0)
[  218.650512] bcm2048 4806c000.serial:bluetooth: GPIO lookup for
consumer bluetooth-wakeup
[  218.650543] bcm2048 4806c000.serial:bluetooth: using device tree
for GPIO lookup
[  218.650604] of_get_named_gpiod_flags: parsed
'bluetooth-wakeup-gpios' property of node
'/ocp at 68000000/serial@4806c000/bluetooth[0]' - status (0)
[  218.650817] bcm2048 4806c000.serial:bluetooth: parent uart: ttyO1
[  218.650817] bcm2048 4806c000.serial:bluetooth: sysclk speed: 38400
kHz
[  218.650848] bcm2048 4806c000.serial:bluetooth: probe: 0
[  218.774139] Bluetooth: HCI UART driver ver 2.3
[  218.774169] Bluetooth: HCI UART protocol H4 registered
[  218.774169] Bluetooth: HCI UART protocol H4+ registered
[  218.774169] Bluetooth: HCI UART protocol BCSP registered
[  218.774200] Bluetooth: HCI UART protocol LL registered
[  218.774200] Bluetooth: HCI UART protocol ATH3K registered
[  218.774200] Bluetooth: HCI UART protocol Three-wire (H5) registered
[  219.904876] tty ttyO1: Nokia H4+ protocol initialized with
4806c000.serial:bluetooth!
[  219.921112] tty ttyO1: Nokia H4+ protocol setup...
[  219.921142] h4p_reset: reset
[  219.921142] hci_uart_init_tty
[  219.983520] h4p_reset: flush
[  219.983551] h4p_reset: speed
[  219.983581] tty ttyO1: setting speed to 120000 baud
[  219.983673] h4p_reset: safety
[  219.986480] tty ttyO1: wakeup received: 0 -> 1
[  220.013488] tty ttyO1: wait for cts... received!
[  220.013519] h4p_reset: flow
[  220.013549] tty ttyO1: Sending negotiation...
[  220.013580] tty ttyO1: gpio state: reset=1 wakehost=1 wakebt=1
[  220.013610] enqueue: hu c304cc80 skb cd4da000
[  220.017425] tty ttyO1: H4P negotiation:
[  220.017456] tty ttyO1:     baudrate = 416
[  220.017486] tty ttyO1:     system clock = 38400
[  220.017486] tty ttyO1:     manufacturer id = 4
[  220.017486] tty ttyO1:     version id = 11
[  220.017578] tty ttyO1: setting speed to 921600 baud
[  220.043457] tty ttyO1: wait for cts... received!
[  220.043548] tty ttyO1: Negotiation successful...
[  220.043579] tty ttyO1: Sending alive packet...
[  220.043579] enqueue: hu c304cc80 skb cd4dacc0
[  220.043853] tty ttyO1: Received alive packet!
[  220.047851] tty ttyO1: FW: Skip negotion packet!
[  220.047882] tty ttyO1: FW: Skip alive packet!
[  220.052185] enqueue: hu c304cc80 skb cd4da480
[  220.055175] enqueue: hu c304cc80 skb cd4dae40
[  220.058776] enqueue: hu c304cc80 skb cd4da6c0
[  220.058898] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.058929] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.064605] enqueue: hu c304cc80 skb cd4daf00
[  220.068389] enqueue: hu c304cc80 skb cd4da0c0
[  220.068542] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.068542] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.071960] enqueue: hu c304cc80 skb cd4da840
[  220.072082] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.072082] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.075592] enqueue: hu c304cc80 skb cd4da180
[  220.079803] enqueue: hu c304cc80 skb cd479cc0
[  220.084381] enqueue: hu c304cc80 skb cd479180
[  220.087982] enqueue: hu c304cc80 skb cd4793c0
[  220.088104] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.088134] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.091522] enqueue: hu c304cc80 skb cd479e40
[  220.095336] enqueue: hu c304cc80 skb cd479540
[  220.098876] enqueue: hu c304cc80 skb cd479000
[  220.102386] enqueue: hu c304cc80 skb cd479600
[  220.102478] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.102508] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.105987] enqueue: hu c304cc80 skb cd479780
[  220.109527] enqueue: hu c304cc80 skb cd450cc0
[  220.109619] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.109649] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.113098] enqueue: hu c304cc80 skb cd484600
[  220.113220] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.113250] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.116760] enqueue: hu c304cc80 skb cd4a9b40
[  220.120300] enqueue: hu c304cc80 skb cd77c840
[  220.124786] enqueue: hu c304cc80 skb cd4f7900
[  220.128387] enqueue: hu c304cc80 skb c4fb2180
[  220.131896] enqueue: hu c304cc80 skb c4fb23c0
[  220.135498] enqueue: hu c304cc80 skb c4fb2cc0
[  220.139007] enqueue: hu c304cc80 skb c4fb2000
[  220.142486] enqueue: hu c304cc80 skb cd44fcc0
[  220.146118] enqueue: hu c304cc80 skb cd4b60c0
[  220.149627] enqueue: hu c304cc80 skb cf1986c0
[  220.153106] enqueue: hu c304cc80 skb cf198480
[  220.156738] enqueue: hu c304cc80 skb cf1980c0
[  220.160278] enqueue: hu c304cc80 skb cf198240
[  220.164733] enqueue: hu c304cc80 skb cd49f780
[  220.168365] enqueue: hu c304cc80 skb cd4daf00
[  220.171844] enqueue: hu c304cc80 skb cd4da6c0
[  220.175445] enqueue: hu c304cc80 skb cd4dab40
[  220.175567] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.175567] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.178955] enqueue: hu c304cc80 skb cd479780
[  220.182434] enqueue: hu c304cc80 skb cd479540
[  220.182525] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.182556] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.186035] enqueue: hu c304cc80 skb cd4793c0
[  220.188140] enqueue: hu c304cc80 skb cd479b40
[  220.188537] enqueue: hu c304cc80 skb cd484600
[  220.236480] enqueue: hu c304cc80 skb cd4a9f00
[  220.237701] enqueue: hu c304cc80 skb cd4f7900
[  220.238830] enqueue: hu c304cc80 skb c4fb23c0
[  220.239959] enqueue: hu c304cc80 skb c4fb2b40
[  220.241119] enqueue: hu c304cc80 skb c3107000
[  220.242187] enqueue: hu c304cc80 skb cd724240
[  220.243286] enqueue: hu c304cc80 skb cf198540
[  220.244781] enqueue: hu c304cc80 skb cf198540
[  220.245758] enqueue: hu c304cc80 skb cd49f780
[  220.246612] enqueue: hu c304cc80 skb cd4daf00
[  220.247436] enqueue: hu c304cc80 skb cd479540
[  220.248535] tty ttyO1: Sending radio packet...
[  220.248565] enqueue: hu c304cc80 skb cd479cc0
[  220.248596] tty ttyO1: Radio packet sent
[  220.249328] Bluetooth: hci0: Frame reassembly failed (-84)
[  220.272949] tty ttyO1: wakeup received: 1 -> 0
[  221.283477] tty ttyO1: radio packet timeout!
[  221.283630] enqueue: hu c304cc80 skb cd4a9b40
[  223.363372] Bluetooth: hci0 command 0xfc18 tx timeout
pavel at n900:~$

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20161019/4903439f/attachment-0001.sig>