Kernel 4.19.x does not work on BeagleBone Green Gateway
Starting with the image bone-debian-10.5-console-armhf-2020-08-31-1gb.img.xz on a BeagleBone Green Gateway, I've upgraded the kernel via:
sudo apt install linux-image-4.19.135-bone55
and then rebooted.
The board boots, and I'm able to login via SSH, but shortly after it's unresponsive and the LEDs are freezed. On the serial console, I see these messages:
[ 34.183608] Bluetooth: hci0: command 0x1001 tx timeout
[ 42.215635] Bluetooth: hci0: Reading TI version information failed (-110)
[ 42.222621] Bluetooth: hci0: download firmware failed, retrying...
[ 44.263609] Bluetooth: hci0: command 0x1001 tx timeout
[ 52.455536] Bluetooth: hci0: Reading TI version information failed (-110)
[ 52.462403] Bluetooth: hci0: download firmware failed, retrying...
I've been comparing the two device tree's, nothing really stand's out. (they are the same..)
I'll keep looking..
Just to add that the same kernel upgrade procedure in a BeagleBone Green Wireless works fine.
This issue is somehow related with Bluetooth in the BBGG.
If i blacklist the BT modules, adding a file /etc/modprobe.d/bluetooth-blacklist.conf:
blacklist bnep
blacklist hci_uart
blacklist bluetooth
it works!
It seems also that it's related with some race condition, because, sometimes, I've seen the 4.19.135-bone55 kernel to work with BT enabled.
Some additional info dumped on the BB serial console when it crashes:
[ 34.280144] Bluetooth: hci0: command 0x1001 tx timeout
[ 42.472149] Bluetooth: hci0: Reading TI version information failed (-110)
[ 42.479195] Bluetooth: hci0: download firmware failed, retrying...
[ 44.520523] Bluetooth: hci0: command 0x1001 tx timeout
[ 52.712150] Bluetooth: hci0: Reading TI version information failed (-110)
[ 52.719043] Bluetooth: hci0: download firmware failed, retrying...
[ 73.716018] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 73.722155] rcu: Tasks blocked on level-0 rcu_node (CPUs 0-0): P2616 P875
[ 73.729061] rcu: (detected by 0, t=5252 jiffies, g=32433, q=12)
[ 73.735762] rcu: rcu_preempt kthread starved for 5248 jiffies! g32433 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->cpu=0
[ 73.746240] rcu: RCU grace-period kthread stack dump:
[ 136.736014] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 136.742141] rcu: Tasks blocked on level-0 rcu_node (CPUs 0-0): P2616 P875
[ 136.749044] rcu: (detected by 0, t=21007 jiffies, g=32433, q=12)
[ 136.755758] rcu: rcu_preempt kthread starved for 21003 jiffies! g32433 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0
[ 136.766147] rcu: RCU grace-period kthread stack dump:
[ 199.756011] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 199.762137] rcu: Tasks blocked on level-0 rcu_node (CPUs 0-0): P2616 P875
[ 199.769040] rcu: (detected by 0, t=36762 jiffies, g=32433, q=12)
[ 199.775745] rcu: rcu_preempt kthread starved for 36758 jiffies! g32433 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0
[ 199.786134] rcu: RCU grace-period kthread stack dump:
@RobertCNelson Any progresses on this issue? This was not very relevant to me because I did not have any issues with 4.19.x kernels from ti-linux-kernel-dev, which I am currently using in my application. Nevertheless, recently I've seen it also happen with ti-linux-kernel-dev, what causes Bluetooth to be unavailable in BBGG. Has I indicated previously, It seems some kind of a race condition, because in some reboots the BBGG can boot with Bluetooth enabled.