linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Kernel interace for LE Set/Read PHY API's
       [not found] <CGME20181101075451epcms5p466176e62713906cef4d5aa41ef8cfc2e@epcms5p4>
@ 2018-11-01  7:54 ` Anupam Roy
  2018-11-01 14:27   ` Luiz Augusto von Dentz
       [not found]   ` <CGME20181101075451epcms5p466176e62713906cef4d5aa41ef8cfc2e@epcms5p3>
  0 siblings, 2 replies; 3+ messages in thread
From: Anupam Roy @ 2018-11-01  7:54 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Anupam Roy

Hi,
 Is there is any plan or on-going work to support kernel interface for BT 5.0 PHY based HCI commands - 'LE Set PHY', 'LE Read PHY'?
Actually, we would want to have support for the above, such that PHY parameters can be updated\indicated from user space BlueZ for any particular connection.
As I see, currently there is no kernel interface via which application can change PHY or atleast request controller to change PHY (for a particular connection)

In order to support these via kernel interface, I think following could be possible approaches.
 - via kernel's MGMT interface (I am not sure if this would be ideal approach to set PHY preferrence from user space)
 - via L2CAP socket options (Bluez user space would be able to read\Set Preference for a particular connection handle)
 - via kernel internal logic (Don't expose control to user space and handle Read/Set PHY internally inside kernel. Choose 2M always, irrespective of user's preference.
       But, i am not sure, if this would conflict with different application's requirement for a particular PHY.

Also please suggest if there is any other better way to support these?

Why we would require these support?:  Even though LE Set Default PHY can be used to indicate controller about preferrence/mix of certain PHY's, it will be applied (unless controller denies it based on Connection interval or other requirements)
for all subsequent connections and hence no per connection(application) control over PHY.

Please provide your suggestions/comments on how to go about with these! 
Thank You very much!

BR,
-Anupam Roy

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Kernel interace for LE Set/Read PHY API's
  2018-11-01  7:54 ` Kernel interace for LE Set/Read PHY API's Anupam Roy
@ 2018-11-01 14:27   ` Luiz Augusto von Dentz
       [not found]   ` <CGME20181101075451epcms5p466176e62713906cef4d5aa41ef8cfc2e@epcms5p3>
  1 sibling, 0 replies; 3+ messages in thread
From: Luiz Augusto von Dentz @ 2018-11-01 14:27 UTC (permalink / raw)
  To: Anupam Roy; +Cc: linux-bluetooth

Hi Anupam,
On Thu, Nov 1, 2018 at 10:26 AM Anupam Roy <anupam.r@samsung.com> wrote:
>
> Hi,
>  Is there is any plan or on-going work to support kernel interface for BT 5.0 PHY based HCI commands - 'LE Set PHY', 'LE Read PHY'?
> Actually, we would want to have support for the above, such that PHY parameters can be updated\indicated from user space BlueZ for any particular connection.
> As I see, currently there is no kernel interface via which application can change PHY or atleast request controller to change PHY (for a particular connection)
>
> In order to support these via kernel interface, I think following could be possible approaches.
>  - via kernel's MGMT interface (I am not sure if this would be ideal approach to set PHY preferrence from user space)
>  - via L2CAP socket options (Bluez user space would be able to read\Set Preference for a particular connection handle)
>  - via kernel internal logic (Don't expose control to user space and handle Read/Set PHY internally inside kernel. Choose 2M always, irrespective of user's preference.
>        But, i am not sure, if this would conflict with different application's requirement for a particular PHY.

I think it might be better to have a QoS option per socket since it
probably need to accessible at application level, that way the
application can configure its preference which may or may not be
attended in case there are more channels, for instance if app A
request 1Mbit/s and app B request 2Mbit/s than we probably should go
with 2Mbit/s but this is a policy that could probably go into the
kernel directly. This could also be extended to connection parameters
as well, in fact I think we would benefit more from starting with
connection parameters and then add PHY field later on.

> Also please suggest if there is any other better way to support these?
>
> Why we would require these support?:  Even though LE Set Default PHY can be used to indicate controller about preferrence/mix of certain PHY's, it will be applied (unless controller denies it based on Connection interval or other requirements)
> for all subsequent connections and hence no per connection(application) control over PHY.
>
> Please provide your suggestions/comments on how to go about with these!
> Thank You very much!
>
> BR,
> -Anupam Roy



-- 
Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: Re: Kernel interace for LE Set/Read PHY API's
       [not found]   ` <CGME20181101075451epcms5p466176e62713906cef4d5aa41ef8cfc2e@epcms5p3>
@ 2018-11-16 15:18     ` Anupam Roy
  0 siblings, 0 replies; 3+ messages in thread
From: Anupam Roy @ 2018-11-16 15:18 UTC (permalink / raw)
  To: Luiz Augusto von Dentz; +Cc: linux-bluetooth, SACHIN DEV SHARMA, Anupam Roy

Hi Luiz,

>--------- Original Message ---------
>Sender : Luiz Augusto von Dentz <luiz.dentz@gmail.com>
>Date   : 2018-11-01 23:28 (GMT+9)
>Title  : Re: Kernel interace for LE Set/Read PHY API's
> 
>Hi Anupam,
>On Thu, Nov 1, 2018 at 10:26 AM Anupam Roy <anupam.r@samsung.com> wrote:
>>
>> Hi,
>>  Is there is any plan or on-going work to support kernel interface for BT 5.0 PHY based HCI commands - 'LE Set PHY', 'LE Read PHY'?
>> Actually, we would want to have support for the above, such that PHY parameters can be updated\indicated from user space BlueZ for any particular connection.
>> As I see, currently there is no kernel interface via which application can change PHY or atleast request controller to change PHY (for a particular connection)
>>
>> In order to support these via kernel interface, I think following could be possible approaches.
>>  - via kernel's MGMT interface (I am not sure if this would be ideal approach to set PHY preferrence from user space)
>>  - via L2CAP socket options (Bluez user space would be able to read\Set Preference for a particular connection handle)
>>  - via kernel internal logic (Don't expose control to user space and handle Read/Set PHY internally inside kernel. Choose 2M always, irrespective of user's preference.
>>        But, i am not sure, if this would conflict with different application's requirement for a particular PHY.
> 
>I think it might be better to have a QoS option per socket since it
>probably need to accessible at application level, that way the
>application can configure its preference which may or may not be
>attended in case there are more channels, for instance if app A
>request 1Mbit/s and app B request 2Mbit/s than we probably should go
>with 2Mbit/s but this is a policy that could probably go into the
>kernel directly. This could also be extended to connection parameters
>as well, in fact I think we would benefit more from starting with
>connection parameters and then add PHY field later on.
>
Thank you providing your suggestions and sory for delay in response. By extending to connection parameters, if you are suggesting that we can introduce l2cap socket options for configuring LE connection parameters, I think it will
be ofcourse a good option for user/app for configuring params, based on its specific needs.
Handling LE connection parameter update alone seems OK to handle inside kernel based on some conditions.
However, in this context, I am wondering if later on, if we add PHY fields to the same socket option, do we need to consider following for handing the mixed (PHY params + Conn params) options via L2CAP socket? 
   - Whether to go for Connection parameter update procedure (based on connection parameters and other requirements) or go for LE Set PHY (based on PHY fields suggested by user)
   - Or handle both in some sequence
 Basically in order to resolve this, I think some further policy need to be defined inside kernel? Please provide some insights. Thank You!
 
>> Also please suggest if there is any other better way to support these?
>>
>> Why we would require these support?:  Even though LE Set Default PHY can be used to indicate controller about preferrence/mix of certain PHY's, it will be applied (unless controller denies it based on Connection interval or other requirements)
>> for all subsequent connections and hence no per connection(application) control over PHY.
>>
>> Please provide your suggestions/comments on how to go about with these!
>> Thank You very much!
>>
>> BR,
>> -Anupam Roy
> 
> 
> 
>-- 
>Luiz Augusto von Dentz

BR,
-Anupam Roy

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-11-16 15:18 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <CGME20181101075451epcms5p466176e62713906cef4d5aa41ef8cfc2e@epcms5p4>
2018-11-01  7:54 ` Kernel interace for LE Set/Read PHY API's Anupam Roy
2018-11-01 14:27   ` Luiz Augusto von Dentz
     [not found]   ` <CGME20181101075451epcms5p466176e62713906cef4d5aa41ef8cfc2e@epcms5p3>
2018-11-16 15:18     ` Anupam Roy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).