diff mbox series

[v9,03/10] Bluetooth: Add a callback function to retireve data path

Message ID 20210608122455.19583-3-kiran.k@intel.com
State New
Headers show
Series [v9,01/10] Bluetooth: enumerate local supported codec and cache details | expand

Commit Message

K, Kiran June 8, 2021, 12:24 p.m. UTC
There is no standard HCI command to retrieve data path for transport.
Add a new callback function to retrieve data path which is used
in offload usecase. This needs to be set at setup stage if controller
supports offload codecs

Signed-off-by: Kiran K <kiran.k@intel.com>
Reviewed-by: Chethan T N <chethan.tumkur.narayan@intel.com>
Reviewed-by: Srivatsa Ravishankar <ravishankar.srivatsa@intel.com>
---
* changes in v9:
  - define a separate patch for core changes

 include/net/bluetooth/hci_core.h | 1 +
 1 file changed, 1 insertion(+)

Comments

Marcel Holtmann June 15, 2021, 7:26 p.m. UTC | #1
Hi Kiran,

> There is no standard HCI command to retrieve data path for transport.

> Add a new callback function to retrieve data path which is used

> in offload usecase. This needs to be set at setup stage if controller

> supports offload codecs

> 

> Signed-off-by: Kiran K <kiran.k@intel.com>

> Reviewed-by: Chethan T N <chethan.tumkur.narayan@intel.com>

> Reviewed-by: Srivatsa Ravishankar <ravishankar.srivatsa@intel.com>

> ---

> * changes in v9:

>  - define a separate patch for core changes

> 

> include/net/bluetooth/hci_core.h | 1 +

> 1 file changed, 1 insertion(+)

> 

> diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h

> index 3284044c3dd7..641477396da3 100644

> --- a/include/net/bluetooth/hci_core.h

> +++ b/include/net/bluetooth/hci_core.h

> @@ -617,6 +617,7 @@ struct hci_dev {

> 	int (*set_bdaddr)(struct hci_dev *hdev, const bdaddr_t *bdaddr);

> 	void (*cmd_timeout)(struct hci_dev *hdev);

> 	bool (*prevent_wake)(struct hci_dev *hdev);

> +	int (*get_data_path)(struct hci_dev *hdev);

> };


and where is the code using hdev->get_data_path. That code needs to be in this patch.

Regards

Marcel
K, Kiran June 16, 2021, 2:56 a.m. UTC | #2
Hi Marcel,

> Hi Kiran,

> 

> > There is no standard HCI command to retrieve data path for transport.

> > Add a new callback function to retrieve data path which is used in

> > offload usecase. This needs to be set at setup stage if controller

> > supports offload codecs

> >

> > Signed-off-by: Kiran K <kiran.k@intel.com>

> > Reviewed-by: Chethan T N <chethan.tumkur.narayan@intel.com>

> > Reviewed-by: Srivatsa Ravishankar <ravishankar.srivatsa@intel.com>

> > ---

> > * changes in v9:

> >  - define a separate patch for core changes

> >

> > include/net/bluetooth/hci_core.h | 1 +

> > 1 file changed, 1 insertion(+)

> >

> > diff --git a/include/net/bluetooth/hci_core.h

> > b/include/net/bluetooth/hci_core.h

> > index 3284044c3dd7..641477396da3 100644

> > --- a/include/net/bluetooth/hci_core.h

> > +++ b/include/net/bluetooth/hci_core.h

> > @@ -617,6 +617,7 @@ struct hci_dev {

> > 	int (*set_bdaddr)(struct hci_dev *hdev, const bdaddr_t *bdaddr);

> > 	void (*cmd_timeout)(struct hci_dev *hdev);

> > 	bool (*prevent_wake)(struct hci_dev *hdev);

> > +	int (*get_data_path)(struct hci_dev *hdev);

> > };

> 

> and where is the code using hdev->get_data_path. That code needs to be in

> this patch.


In the previous patchset, there was a comment to separate out driver and core changes. Let me know if I am missing something here.
https://patchwork.kernel.org/project/bluetooth/patch/20210518104232.5431-3-kiran.k@intel.com/

> 

> Regards

> 

> Marcel


Regards,
Kiran
Marcel Holtmann June 16, 2021, 5:17 a.m. UTC | #3
Hi Kiran,

>>> There is no standard HCI command to retrieve data path for transport.

>>> Add a new callback function to retrieve data path which is used in

>>> offload usecase. This needs to be set at setup stage if controller

>>> supports offload codecs

>>> 

>>> Signed-off-by: Kiran K <kiran.k@intel.com>

>>> Reviewed-by: Chethan T N <chethan.tumkur.narayan@intel.com>

>>> Reviewed-by: Srivatsa Ravishankar <ravishankar.srivatsa@intel.com>

>>> ---

>>> * changes in v9:

>>> - define a separate patch for core changes

>>> 

>>> include/net/bluetooth/hci_core.h | 1 +

>>> 1 file changed, 1 insertion(+)

>>> 

>>> diff --git a/include/net/bluetooth/hci_core.h

>>> b/include/net/bluetooth/hci_core.h

>>> index 3284044c3dd7..641477396da3 100644

>>> --- a/include/net/bluetooth/hci_core.h

>>> +++ b/include/net/bluetooth/hci_core.h

>>> @@ -617,6 +617,7 @@ struct hci_dev {

>>> 	int (*set_bdaddr)(struct hci_dev *hdev, const bdaddr_t *bdaddr);

>>> 	void (*cmd_timeout)(struct hci_dev *hdev);

>>> 	bool (*prevent_wake)(struct hci_dev *hdev);

>>> +	int (*get_data_path)(struct hci_dev *hdev);

>>> };

>> 

>> and where is the code using hdev->get_data_path. That code needs to be in

>> this patch.

> 

> In the previous patchset, there was a comment to separate out driver and core changes. Let me know if I am missing something here.

> https://patchwork.kernel.org/project/bluetooth/patch/20210518104232.5431-3-kiran.k@intel.com/

> 


I know that and this is not contradictory. Introducing such a callback must come with the usage of said callback. Usage means the core side and not the driver side of it.

Regards

Marcel
diff mbox series

Patch

diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h
index 3284044c3dd7..641477396da3 100644
--- a/include/net/bluetooth/hci_core.h
+++ b/include/net/bluetooth/hci_core.h
@@ -617,6 +617,7 @@  struct hci_dev {
 	int (*set_bdaddr)(struct hci_dev *hdev, const bdaddr_t *bdaddr);
 	void (*cmd_timeout)(struct hci_dev *hdev);
 	bool (*prevent_wake)(struct hci_dev *hdev);
+	int (*get_data_path)(struct hci_dev *hdev);
 };
 
 #define HCI_PHY_HANDLE(handle)	(handle & 0xff)