All of lore.kernel.org
 help / color / mirror / Atom feed
* Adapter name reset on suspend/resume
@ 2013-11-13 13:44 Bastien Nocera
  2013-11-13 23:28 ` Marcel Holtmann
  0 siblings, 1 reply; 4+ messages in thread
From: Bastien Nocera @ 2013-11-13 13:44 UTC (permalink / raw)
  To: linux-bluetooth

Heya,

After suspending and resuming my laptop, hci0's name is reset to what
looks like the factory name:
$ hciconfig -a | grep Name
	Name: 'BCM20702A'

This is the device in question:
Bus 001 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]

And my laptop is a Lenovo X1 Carbon.

Neither udevadm nor btmon show the device going away on suspend and
coming back on resume.

Any ideas?


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Adapter name reset on suspend/resume
  2013-11-13 13:44 Adapter name reset on suspend/resume Bastien Nocera
@ 2013-11-13 23:28 ` Marcel Holtmann
  2013-11-14  9:31   ` Bastien Nocera
  0 siblings, 1 reply; 4+ messages in thread
From: Marcel Holtmann @ 2013-11-13 23:28 UTC (permalink / raw)
  To: Bastien Nocera; +Cc: linux-bluetooth@vger.kernel.org development

Hi Bastien,

> After suspending and resuming my laptop, hci0's name is reset to what
> looks like the factory name:
> $ hciconfig -a | grep Name
> 	Name: 'BCM20702A'
> 
> This is the device in question:
> Bus 001 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
> 
> And my laptop is a Lenovo X1 Carbon.
> 
> Neither udevadm nor btmon show the device going away on suspend and
> coming back on resume.

can you start btmon, call hciconfig hci0 name, then suspend, then resume, call hciconfig hci0 name again.

I am wondering if for some reason the suspend/resume actually does a HCI Reset without telling us. The name normally only gets reset to BCM20702A when doing a full reset.

Another possibility is that we actually forgot to set it in the first place. I am pretty sure I have intensively tested and that should not happen, but you might just found a corner case.

Regards

Marcel


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Adapter name reset on suspend/resume
  2013-11-13 23:28 ` Marcel Holtmann
@ 2013-11-14  9:31   ` Bastien Nocera
  2013-11-14 14:33     ` Marcel Holtmann
  0 siblings, 1 reply; 4+ messages in thread
From: Bastien Nocera @ 2013-11-14  9:31 UTC (permalink / raw)
  To: Marcel Holtmann; +Cc: linux-bluetooth@vger.kernel.org development

On Thu, 2013-11-14 at 08:28 +0900, Marcel Holtmann wrote:
> Hi Bastien,
> 
> > After suspending and resuming my laptop, hci0's name is reset to what
> > looks like the factory name:
> > $ hciconfig -a | grep Name
> > 	Name: 'BCM20702A'
> > 
> > This is the device in question:
> > Bus 001 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
> > 
> > And my laptop is a Lenovo X1 Carbon.
> > 
> > Neither udevadm nor btmon show the device going away on suspend and
> > coming back on resume.
> 
> can you start btmon, call hciconfig hci0 name, then suspend, then
> resume, call hciconfig hci0 name again.

Bluetooth monitor ver 5.10
= New Index: F4:B7:E2:E8:99:E2 (BR/EDR,USB,hci0)                   [hci0] 0.176335
< HCI Command: Read Local Name (0x03|0x0014) plen 0                [hci0] 9.797930
> HCI Event: Command Complete (0x0e) plen 252                      [hci0] 9.813834
      Read Local Name (0x03|0x0014) ncmd 1
        Status: Success (0x00)
        Name: nuvo
< HCI Command: Read Local Name (0x03|0x0014) plen 0               [hci0] 33.109166
> HCI Event: Command Complete (0x0e) plen 252                     [hci0] 33.125157
      Read Local Name (0x03|0x0014) ncmd 1
        Status: Success (0x00)
        Name: BCM20702A

> I am wondering if for some reason the suspend/resume actually does a
> HCI Reset without telling us. The name normally only gets reset to
> BCM20702A when doing a full reset.

Looks like that's what it's doing.

> Another possibility is that we actually forgot to set it in the first
> place. I am pretty sure I have intensively tested and that should not
> happen, but you might just found a corner case.

It's set on a normal boot, it seems to be reset only when suspending.

Cheers

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Adapter name reset on suspend/resume
  2013-11-14  9:31   ` Bastien Nocera
@ 2013-11-14 14:33     ` Marcel Holtmann
  0 siblings, 0 replies; 4+ messages in thread
From: Marcel Holtmann @ 2013-11-14 14:33 UTC (permalink / raw)
  To: Bastien Nocera; +Cc: linux-bluetooth@vger.kernel.org development

Hi Bastien,

>>> After suspending and resuming my laptop, hci0's name is reset to what
>>> looks like the factory name:
>>> $ hciconfig -a | grep Name
>>> 	Name: 'BCM20702A'
>>> 
>>> This is the device in question:
>>> Bus 001 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
>>> 
>>> And my laptop is a Lenovo X1 Carbon.
>>> 
>>> Neither udevadm nor btmon show the device going away on suspend and
>>> coming back on resume.
>> 
>> can you start btmon, call hciconfig hci0 name, then suspend, then
>> resume, call hciconfig hci0 name again.
> 
> Bluetooth monitor ver 5.10
> = New Index: F4:B7:E2:E8:99:E2 (BR/EDR,USB,hci0)                   [hci0] 0.176335
> < HCI Command: Read Local Name (0x03|0x0014) plen 0                [hci0] 9.797930
>> HCI Event: Command Complete (0x0e) plen 252                      [hci0] 9.813834
>      Read Local Name (0x03|0x0014) ncmd 1
>        Status: Success (0x00)
>        Name: nuvo
> < HCI Command: Read Local Name (0x03|0x0014) plen 0               [hci0] 33.109166
>> HCI Event: Command Complete (0x0e) plen 252                     [hci0] 33.125157
>      Read Local Name (0x03|0x0014) ncmd 1
>        Status: Success (0x00)
>        Name: BCM20702A
> 
>> I am wondering if for some reason the suspend/resume actually does a
>> HCI Reset without telling us. The name normally only gets reset to
>> BCM20702A when doing a full reset.
> 
> Looks like that's what it's doing.
> 
>> Another possibility is that we actually forgot to set it in the first
>> place. I am pretty sure I have intensively tested and that should not
>> happen, but you might just found a corner case.
> 
> It's set on a normal boot, it seems to be reset only when suspending.

I have no idea on how to fix this at the moment. The problem is actually that this kind of behavior with a silent HCI reset will break remote wakeup.

Regards

Marcel


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-11-14 14:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-11-13 13:44 Adapter name reset on suspend/resume Bastien Nocera
2013-11-13 23:28 ` Marcel Holtmann
2013-11-14  9:31   ` Bastien Nocera
2013-11-14 14:33     ` Marcel Holtmann

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.