Re: [PATCH v3] Bluetooth: Add HCI_AUTO_CONN_DIRECT_REPORT_IND

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

 



Hi Alfonso,

> HCI_AUTO_CONN_DIRECT_REPORT_IND (associated to a new autoconnect
> action, 0x03) treats advertising reports like a combination of
> HCI_AUTO_CONN_DIRECT and HCI_AUTO_CONN_REPORT:
> 
> * Autoconnects on ADV_DIRECT_IND reports.
> * Notifies userland (MGMT_EV_DEVICE_FOUND) about ADV_IND reports.
> 
> This is useful to communicate with autoconnectable devices which
> advertise meaningful ADV_IND reports.
> 
> HCI_AUTO_CONN_DIRECT_REPORT_IND requires being able to simultaneously
> have a pending report and connection action. I merged pend_le_reports
> and pend_le_conns into the new pend_le_actions in order to make that
> possible while maintaining a unique list_head in hci_conn_parameters
> (action). This results in simpler handling of pending actions.

I am not really convinced that this is a good idea. In general either you really want Action 0x01 and only accept incoming connection or you want Action 0x02 and connect to the device no matter what.

Originally I had the idea that the advertising data that you receive from ADV_IND when Action 0x02 is in play gets also included in Device Connected event. My thinking there was that the Service Data might have changed and it would be useful to know ahead of time before starting any GATT procedures. However then it seems that was not really useful after all and I stopped considering it. Maybe this idea needs to be picked up again.

Regards

Marcel

--
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