Re: [PATCH] Bluetooth: HCI H5 peer reset detection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Johan,

This is just the expected behavior as described int the specification:

UART Spec says:
If the UART synchronization is lost in the communication from Host to Host
Controller, then the Host Controller shall send a Hardware Error Event to tell the Host about the synchronization error. The Host Controller will then expect to
receive an HCI_Reset command from the Host in order to perform a reset. The
Host Controller will also use the HCI_Reset command in the byte stream from
Host to Host Controller to re-synchronize.

H5 part says:
If a SYNC message is received while in the Active State, it is assumed that the peer device has reset. The local device should therefore perform a full reset of the upper stack, and start Link Establishment again at the Uninitialized State.

So, hardware error seems the best way to warn host stack about the H5 controller
reset.

Regarding the "upper stack", I know that Bluedroid restarts on hardware error, but
I ignore the Bluez behavior.

Regards,
Loic

On 31/10/2014 09:39, Johan Hedberg wrote:
Hi Loic,

On Wed, Oct 08, 2014, Loic Poulain wrote:
This patch resets the HCI H5 driver data/state to unitialized and
reports an HCI hardware error event to notify the upper stack that
HCI synchronization has been lost. H5 will be re-synchronized and
upper stack should generate an HCI Reset command.
I couldn't find anywhere where we'd currently do this "upper stack"
behavior that you describe (there . Did you have some follow-up patches to
implement that?

Johan

--
Intel Open Source Technology Center
http://oss.intel.com/

--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux