diff mbox series

[BlueZ,v5] doc:adding definitions for load default params mgmt op

Message ID 20200528012421.136864-1-alainm@chromium.org (mailing list archive)
State Superseded
Delegated to: Marcel Holtmann
Headers show
Series [BlueZ,v5] doc:adding definitions for load default params mgmt op | expand

Commit Message

Alain Michaud May 28, 2020, 1:24 a.m. UTC
This change adds the definition for the load default parameter command.
In particular, this command is used to load default parameters for
various operations in the kernel. This mechanism is also expandable to
future values that may be necessary.

This will allow bluetoothd to load parameters from a conf file that may
be customized for the specific requirements of each platforms.

Signed-off-by: Alain Michaud <alainm@chromium.org>
---

 doc/mgmt-api.txt | 59 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

Comments

Marcel Holtmann May 28, 2020, 8:13 a.m. UTC | #1
Hi Alain,

> This change adds the definition for the load default parameter command.
> In particular, this command is used to load default parameters for
> various operations in the kernel. This mechanism is also expandable to
> future values that may be necessary.
> 
> This will allow bluetoothd to load parameters from a conf file that may
> be customized for the specific requirements of each platforms.
> 
> Signed-off-by: Alain Michaud <alainm@chromium.org>
> ---
> 
> doc/mgmt-api.txt | 59 ++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 59 insertions(+)
> 
> diff --git a/doc/mgmt-api.txt b/doc/mgmt-api.txt
> index 6ee01fed8..14e3179b5 100644
> --- a/doc/mgmt-api.txt
> +++ b/doc/mgmt-api.txt
> @@ -3223,6 +3223,65 @@ Set Experimental Feature Command
> 				Invalid Index
> 
> 
> +Load Default Controller Parameter Command
> +=============================
> +
> +	Command Code:		0x004b
> +	Controller Index:	<controller id>
> +	Command Parameters:	Parameter1 {
> +					Parameter_Type (2 Octet)
> +					Value_Length (1 Octet)
> +					Value (0-255 Octets)
> +				}
> +				Parameter2 { }
> +				...
> +	Return Parameters:
> +
> +	This command is used to feed the kernel a list of default controller
> +	parameters.
> +
> +	Currently defined Parameter_Type values are:
> +
> +		0x0000	BR/EDR Page Scan Type
> +		0x0001	BR/EDR Page Scan Interval
> +		0x0002	BR/EDR Page Scan Window
> +		0x0003	BR/EDR Inquiry Scan Type
> +		0x0004	BR/EDR Inquiry Scan Interval
> +		0x0005	BR/EDR Inquiry Scan Window
> +		0x0006	BR/EDR Link Supervision Timeout
> +		0x0007	BR/EDR Page Timeout
> +		0x0008	BR/EDR Min Sniff Interval
> +		0x0009	BR/EDR Max Sniff Interval
> +		0x000a	LE Advertisement Min Interval
> +		0x000b	LE Advertisement Max Interval
> +		0x000c	LE Multi Advertisement Rotation Interval
> +		0x000d	LE Scanning Interval for auto connect
> +		0x000e	LE Scanning Window for auto connect
> +		0x000f	LE Scanning Interval for wake scenarios
> +		0x0010	LE Scanning Window for wake scenarios
> +		0x0011	LE Scanning Interval for discovery
> +		0x0012	LE Scanning Window for discovery
> +		0x0013	LE Scanning Interval for adv monitoring
> +		0x0014	LE Scanning Window for adv monitoring
> +		0x0015	LE Scanning Interval for connect
> +		0x0016	LE Scanning Window for connect
> +		0x0017	LE Min Connection Interval
> +		0x0018	LE Max Connection Interval
> +		0x0019	LE Connection Latency
> +		0x001a	LE Connection Supervision Timeout
> +
> +	This command can be used when the controller is not powered and
> +	all settings will be programmed once powered.  Note that these only
> +	control the default parameters.  Higher level Apis may influence the
> +	effective value used.
> +
> +	This command generates a Command Complete event on success or
> +	a Command Status event on failure.
> +
> +	Possible errors:	Invalid Parameters
> +				Invalid Index
> +
> +

you asked me about naming and I was thinking this:

+Read Default System Configuration Command
+=========================================
+
+
+Set Default System Configuration Command
+========================================
+
+
+Read Default Runtime Parameters Command
+=======================================
+
+
+Load Default Runtime Parameters Command
+=======================================

The Default System is the actual configuration that you load before you power on the controller. These are really the default values for a lot of things. And I used “Read” to get the current settings and also with that the list of supported values. So you know what changes would actually be possible.

I called the other one “Set” since it can set/overwrite a few of these values or actually all. I don’t wanted to use “Load” since it is not replacing all of the values like what we have with the other load commands.

The Default Runtime would be then all values that can be tweaked while the controller is up and running.

Regards

Marcel
Alain Michaud May 28, 2020, 1:32 p.m. UTC | #2
Hi Marcel,

This makes sense.  I'll send a new set of patches shortly.

Thanks,
Alain


On Thu, May 28, 2020 at 4:13 AM Marcel Holtmann <marcel@holtmann.org> wrote:
>
> Hi Alain,
>
> > This change adds the definition for the load default parameter command.
> > In particular, this command is used to load default parameters for
> > various operations in the kernel. This mechanism is also expandable to
> > future values that may be necessary.
> >
> > This will allow bluetoothd to load parameters from a conf file that may
> > be customized for the specific requirements of each platforms.
> >
> > Signed-off-by: Alain Michaud <alainm@chromium.org>
> > ---
> >
> > doc/mgmt-api.txt | 59 ++++++++++++++++++++++++++++++++++++++++++++++++
> > 1 file changed, 59 insertions(+)
> >
> > diff --git a/doc/mgmt-api.txt b/doc/mgmt-api.txt
> > index 6ee01fed8..14e3179b5 100644
> > --- a/doc/mgmt-api.txt
> > +++ b/doc/mgmt-api.txt
> > @@ -3223,6 +3223,65 @@ Set Experimental Feature Command
> >                               Invalid Index
> >
> >
> > +Load Default Controller Parameter Command
> > +=============================
> > +
> > +     Command Code:           0x004b
> > +     Controller Index:       <controller id>
> > +     Command Parameters:     Parameter1 {
> > +                                     Parameter_Type (2 Octet)
> > +                                     Value_Length (1 Octet)
> > +                                     Value (0-255 Octets)
> > +                             }
> > +                             Parameter2 { }
> > +                             ...
> > +     Return Parameters:
> > +
> > +     This command is used to feed the kernel a list of default controller
> > +     parameters.
> > +
> > +     Currently defined Parameter_Type values are:
> > +
> > +             0x0000  BR/EDR Page Scan Type
> > +             0x0001  BR/EDR Page Scan Interval
> > +             0x0002  BR/EDR Page Scan Window
> > +             0x0003  BR/EDR Inquiry Scan Type
> > +             0x0004  BR/EDR Inquiry Scan Interval
> > +             0x0005  BR/EDR Inquiry Scan Window
> > +             0x0006  BR/EDR Link Supervision Timeout
> > +             0x0007  BR/EDR Page Timeout
> > +             0x0008  BR/EDR Min Sniff Interval
> > +             0x0009  BR/EDR Max Sniff Interval
> > +             0x000a  LE Advertisement Min Interval
> > +             0x000b  LE Advertisement Max Interval
> > +             0x000c  LE Multi Advertisement Rotation Interval
> > +             0x000d  LE Scanning Interval for auto connect
> > +             0x000e  LE Scanning Window for auto connect
> > +             0x000f  LE Scanning Interval for wake scenarios
> > +             0x0010  LE Scanning Window for wake scenarios
> > +             0x0011  LE Scanning Interval for discovery
> > +             0x0012  LE Scanning Window for discovery
> > +             0x0013  LE Scanning Interval for adv monitoring
> > +             0x0014  LE Scanning Window for adv monitoring
> > +             0x0015  LE Scanning Interval for connect
> > +             0x0016  LE Scanning Window for connect
> > +             0x0017  LE Min Connection Interval
> > +             0x0018  LE Max Connection Interval
> > +             0x0019  LE Connection Latency
> > +             0x001a  LE Connection Supervision Timeout
> > +
> > +     This command can be used when the controller is not powered and
> > +     all settings will be programmed once powered.  Note that these only
> > +     control the default parameters.  Higher level Apis may influence the
> > +     effective value used.
> > +
> > +     This command generates a Command Complete event on success or
> > +     a Command Status event on failure.
> > +
> > +     Possible errors:        Invalid Parameters
> > +                             Invalid Index
> > +
> > +
>
> you asked me about naming and I was thinking this:
>
> +Read Default System Configuration Command
> +=========================================
> +
> +
> +Set Default System Configuration Command
> +========================================
> +
> +
> +Read Default Runtime Parameters Command
> +=======================================
> +
> +
> +Load Default Runtime Parameters Command
> +=======================================
>
> The Default System is the actual configuration that you load before you power on the controller. These are really the default values for a lot of things. And I used “Read” to get the current settings and also with that the list of supported values. So you know what changes would actually be possible.
>
> I called the other one “Set” since it can set/overwrite a few of these values or actually all. I don’t wanted to use “Load” since it is not replacing all of the values like what we have with the other load commands.
>
> The Default Runtime would be then all values that can be tweaked while the controller is up and running.
>
> Regards
>
> Marcel
>
diff mbox series

Patch

diff --git a/doc/mgmt-api.txt b/doc/mgmt-api.txt
index 6ee01fed8..14e3179b5 100644
--- a/doc/mgmt-api.txt
+++ b/doc/mgmt-api.txt
@@ -3223,6 +3223,65 @@  Set Experimental Feature Command
 				Invalid Index
 
 
+Load Default Controller Parameter Command
+=============================
+
+	Command Code:		0x004b
+	Controller Index:	<controller id>
+	Command Parameters:	Parameter1 {
+					Parameter_Type (2 Octet)
+					Value_Length (1 Octet)
+					Value (0-255 Octets)
+				}
+				Parameter2 { }
+				...
+	Return Parameters:
+
+	This command is used to feed the kernel a list of default controller
+	parameters.
+
+	Currently defined Parameter_Type values are:
+
+		0x0000	BR/EDR Page Scan Type
+		0x0001	BR/EDR Page Scan Interval
+		0x0002	BR/EDR Page Scan Window
+		0x0003	BR/EDR Inquiry Scan Type
+		0x0004	BR/EDR Inquiry Scan Interval
+		0x0005	BR/EDR Inquiry Scan Window
+		0x0006	BR/EDR Link Supervision Timeout
+		0x0007	BR/EDR Page Timeout
+		0x0008	BR/EDR Min Sniff Interval
+		0x0009	BR/EDR Max Sniff Interval
+		0x000a	LE Advertisement Min Interval
+		0x000b	LE Advertisement Max Interval
+		0x000c	LE Multi Advertisement Rotation Interval
+		0x000d	LE Scanning Interval for auto connect
+		0x000e	LE Scanning Window for auto connect
+		0x000f	LE Scanning Interval for wake scenarios
+		0x0010	LE Scanning Window for wake scenarios
+		0x0011	LE Scanning Interval for discovery
+		0x0012	LE Scanning Window for discovery
+		0x0013	LE Scanning Interval for adv monitoring
+		0x0014	LE Scanning Window for adv monitoring
+		0x0015	LE Scanning Interval for connect
+		0x0016	LE Scanning Window for connect
+		0x0017	LE Min Connection Interval
+		0x0018	LE Max Connection Interval
+		0x0019	LE Connection Latency
+		0x001a	LE Connection Supervision Timeout
+
+	This command can be used when the controller is not powered and
+	all settings will be programmed once powered.  Note that these only
+	control the default parameters.  Higher level Apis may influence the
+	effective value used.
+
+	This command generates a Command Complete event on success or
+	a Command Status event on failure.
+
+	Possible errors:	Invalid Parameters
+				Invalid Index
+
+
 Command Complete Event
 ======================