• Marcel Holtmann's avatar
    Bluetooth: Run controller setup after external configuration · d603b76b
    Marcel Holtmann authored
    When the external configuration triggers the switch to a configured
    controller, it means the setup needs to be run. Controllers that start
    out unconfigured have only run limited set of HCI commands. This is
    not enough for complete operation and thus run the setup procedure
    before announcing the new controller index.
    
    This introduces HCI_CONFIG flag as companion to HCI_SETUP flag. The
    HCI_SETUP flag is only used once for the initial setup procedure. And
    during that procedure hdev->setup driver callback is called. With the
    new HCI_CONFIG the switch from unconfigured to configured state is
    triggering the same setup procedure just without hdev->setup. This
    is required since bringing a controller back to unconfigured state
    from configured state is possible.
    Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
    d603b76b
hci_core.c 124 KB