• Abhishek Pandit-Subedi's avatar
    Bluetooth: Emit controller suspend and resume events · 2f20216c
    Abhishek Pandit-Subedi authored
    Emit controller suspend and resume events when we are ready for suspend
    and we've resumed from suspend.
    
    The controller suspend event will report whatever suspend state was
    successfully entered. The controller resume event will check the first
    HCI event that was received after we finished preparing for suspend and,
    if it was a connection event, store the address of the peer that caused
    the event. If it was not a connection event, we mark the wake reason as
    an unexpected event.
    
    Here is a sample btmon trace with these events:
    
    @ MGMT Event: Controller Suspended (0x002d) plen 1
            Suspend state: Page scanning and/or passive scanning (2)
    
    @ MGMT Event: Controller Resumed (0x002e) plen 8
            Wake reason: Remote wake due to peer device connection (2)
            LE Address: CD:F3:CD:13:C5:9A (OUI CD-F3-CD)
    Signed-off-by: default avatarAbhishek Pandit-Subedi <abhishekpandit@chromium.org>
    Reviewed-by: default avatarMiao-chen Chou <mcchou@chromium.org>
    Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    2f20216c
hci_core.h 48.9 KB