Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI definitions
On Mon, May 20, 2019 at 03:20:02PM +, Liming Sun wrote: > Please see response inline. > > > -Original Message- > > From: Greg Kroah-Hartman > > Sent: Saturday, May 18, 2019 2:35 AM > > To: Liming Sun > > Cc: Andy Shevchenko ; Darren Hart > > ; Vadim Pasternak ; David > > Woods ; platform-driver-...@vger.kernel.org; > > linux-kernel@vger.kernel.org; David S. Miller > > ; Mauro Carvalho Chehab ; > > Jonathan Cameron > > ; Nicolas Ferre ; > > Paul E. McKenney > > Subject: Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI > > definitions > > > > On Fri, May 17, 2019 at 08:36:53PM +, Liming Sun wrote: > > > Thanks Greg for the comments! Please see my response inline. > > > > > > Regards, > > > - Liming > > > > > > > -Original Message- > > > > From: Greg Kroah-Hartman > > > > Sent: Friday, May 17, 2019 1:59 PM > > > > To: Liming Sun > > > > Cc: Andy Shevchenko ; Darren Hart > > > > ; Vadim Pasternak ; > > David > > > > Woods ; platform-driver-...@vger.kernel.org; > > > > linux-kernel@vger.kernel.org; David S. Miller > > > > ; Mauro Carvalho Chehab > > > > ; Jonathan Cameron > > > > ; Nicolas Ferre > > > > ; Paul E. McKenney > > > > Subject: Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the > > > > ABI definitions > > > > > > > > On Fri, May 17, 2019 at 01:49:05PM -0400, Liming Sun wrote: > > > > > This commit adds the ABI definitions exposed to userspace for > > > > > the platform/mellanox/mlxbf-bootctl driver. > > > > > > > > > > Reviewed-by: Vadim Pasternak > > > > > Signed-off-by: Liming Sun > > > > > --- > > > > > .../ABI/testing/sysfs-platform-mellanox-bootctl| 58 > > > > > ++ > > > > > MAINTAINERS| 1 + > > > > > 2 files changed, 59 insertions(+) > > > > > create mode 100644 > > > > > Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > > > > > > > diff --git > > > > > a/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > > b/Documentation/ABI/testing/sysfs-platform-mellanox- > > > > bootctl > > > > > new file mode 100644 > > > > > index 000..19a14db > > > > > --- /dev/null > > > > > +++ b/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > > @@ -0,0 +1,58 @@ > > > > > +What: > > > > > /sys/bus/platform/drivers/mlxbf-bootctl/lifecycle_state > > > > > +Date:May 2019 > > > > > +KernelVersion: 5.3 > > > > > +Contact: "Liming Sun " > > > > > +Description: > > > > > + The Life-cycle state of the SoC, which could be one of > > > > > the > > > > > + following values. > > > > > + Production - Production state and can be updated to > > > > > secure > > > > > + GA Secured - Secure chip and not able to change state > > > > > + GA Non-Secured - Non-Secure chip and not able to > > > > > change state > > > > > + RMA - Return Merchandise Authorization > > > > > > > > A "driver" does not have a lifecycle state, a "device" does. > > > > > > > > You are putting all of these attributes in the wrong place. Put them on > > > > your device please, not the driver. driver-specific attributes are > > > > _VERY_ rare, and only for things that can modify/show for all devices > > > > attached to that driver. > > > > > > This driver is running on the ARM processor of the SoC. The 'device' is > > > the SoC itself. That's to say, there is only one device here attached to > > > the driver and the driver state will also be the device state. > > > > That might be true today, but maybe not tomorrow :) > > > > Anyway, again, this is device state, not driver state. > > Yes, I agree. I discussed with the team and will move these attributes > under device (since they could be all considered as device state). Great. > > > This interface has been used by user-space
RE: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI definitions
Please see response inline. > -Original Message- > From: Greg Kroah-Hartman > Sent: Saturday, May 18, 2019 2:35 AM > To: Liming Sun > Cc: Andy Shevchenko ; Darren Hart ; > Vadim Pasternak ; David > Woods ; platform-driver-...@vger.kernel.org; > linux-kernel@vger.kernel.org; David S. Miller > ; Mauro Carvalho Chehab ; > Jonathan Cameron > ; Nicolas Ferre ; > Paul E. McKenney > Subject: Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI > definitions > > On Fri, May 17, 2019 at 08:36:53PM +, Liming Sun wrote: > > Thanks Greg for the comments! Please see my response inline. > > > > Regards, > > - Liming > > > > > -Original Message- > > > From: Greg Kroah-Hartman > > > Sent: Friday, May 17, 2019 1:59 PM > > > To: Liming Sun > > > Cc: Andy Shevchenko ; Darren Hart > > > ; Vadim Pasternak ; > David > > > Woods ; platform-driver-...@vger.kernel.org; > > > linux-kernel@vger.kernel.org; David S. Miller > > > ; Mauro Carvalho Chehab > > > ; Jonathan Cameron > > > ; Nicolas Ferre > > > ; Paul E. McKenney > > > Subject: Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI > > > definitions > > > > > > On Fri, May 17, 2019 at 01:49:05PM -0400, Liming Sun wrote: > > > > This commit adds the ABI definitions exposed to userspace for > > > > the platform/mellanox/mlxbf-bootctl driver. > > > > > > > > Reviewed-by: Vadim Pasternak > > > > Signed-off-by: Liming Sun > > > > --- > > > > .../ABI/testing/sysfs-platform-mellanox-bootctl| 58 > > > > ++ > > > > MAINTAINERS| 1 + > > > > 2 files changed, 59 insertions(+) > > > > create mode 100644 > > > > Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > > > > > diff --git a/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > b/Documentation/ABI/testing/sysfs-platform-mellanox- > > > bootctl > > > > new file mode 100644 > > > > index 000..19a14db > > > > --- /dev/null > > > > +++ b/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > @@ -0,0 +1,58 @@ > > > > +What: /sys/bus/platform/drivers/mlxbf-bootctl/lifecycle_state > > > > +Date: May 2019 > > > > +KernelVersion: 5.3 > > > > +Contact: "Liming Sun " > > > > +Description: > > > > + The Life-cycle state of the SoC, which could be one of > > > > the > > > > + following values. > > > > + Production - Production state and can be updated to > > > > secure > > > > + GA Secured - Secure chip and not able to change state > > > > + GA Non-Secured - Non-Secure chip and not able to > > > > change state > > > > + RMA - Return Merchandise Authorization > > > > > > A "driver" does not have a lifecycle state, a "device" does. > > > > > > You are putting all of these attributes in the wrong place. Put them on > > > your device please, not the driver. driver-specific attributes are > > > _VERY_ rare, and only for things that can modify/show for all devices > > > attached to that driver. > > > > This driver is running on the ARM processor of the SoC. The 'device' is > > the SoC itself. That's to say, there is only one device here attached to > > the driver and the driver state will also be the device state. > > That might be true today, but maybe not tomorrow :) > > Anyway, again, this is device state, not driver state. Yes, I agree. I discussed with the team and will move these attributes under device (since they could be all considered as device state). > > > This interface has been used by user-space applications for a couple of > > releases. It'll be great if it could stay in such way for compatibility. > > Please > > advise if this is strongly preferred to move them under devices. > > So this is code that is already in the tree, and is just now being > documented? What .c file(s) is this referring to? This code is not in the kernel tree yet. It has been in Mellanox BlueField SW packages for a couple of releases and is trying to be up-streamed now. > > As for "comptability", sysfs is made such that if a file is not present, > userspace should be able to survive, that is why it is > one-value-per-file. What tool is using this, and where is the source > for it? The latest 2.0 code can be found at link https://github.com/Mellanox/mlxbf-bootctl/tree/2.0 In file mlxbf-bootctl.c, currently it uses the 'drivers' path as sysfs path. #define SYS_PATH "/sys/bus/platform/drivers/mlx-bootctl". We could update it to support both paths. > > thanks, > > greg k-h
Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI definitions
On Fri, May 17, 2019 at 08:36:53PM +, Liming Sun wrote: > Thanks Greg for the comments! Please see my response inline. > > Regards, > - Liming > > > -Original Message- > > From: Greg Kroah-Hartman > > Sent: Friday, May 17, 2019 1:59 PM > > To: Liming Sun > > Cc: Andy Shevchenko ; Darren Hart > > ; Vadim Pasternak ; David > > Woods ; platform-driver-...@vger.kernel.org; > > linux-kernel@vger.kernel.org; David S. Miller > > ; Mauro Carvalho Chehab ; > > Jonathan Cameron > > ; Nicolas Ferre ; > > Paul E. McKenney > > Subject: Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI > > definitions > > > > On Fri, May 17, 2019 at 01:49:05PM -0400, Liming Sun wrote: > > > This commit adds the ABI definitions exposed to userspace for > > > the platform/mellanox/mlxbf-bootctl driver. > > > > > > Reviewed-by: Vadim Pasternak > > > Signed-off-by: Liming Sun > > > --- > > > .../ABI/testing/sysfs-platform-mellanox-bootctl| 58 > > > ++ > > > MAINTAINERS| 1 + > > > 2 files changed, 59 insertions(+) > > > create mode 100644 > > > Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > > > diff --git a/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > b/Documentation/ABI/testing/sysfs-platform-mellanox- > > bootctl > > > new file mode 100644 > > > index 000..19a14db > > > --- /dev/null > > > +++ b/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > @@ -0,0 +1,58 @@ > > > +What:/sys/bus/platform/drivers/mlxbf-bootctl/lifecycle_state > > > +Date:May 2019 > > > +KernelVersion: 5.3 > > > +Contact: "Liming Sun " > > > +Description: > > > + The Life-cycle state of the SoC, which could be one of the > > > + following values. > > > + Production - Production state and can be updated to secure > > > + GA Secured - Secure chip and not able to change state > > > + GA Non-Secured - Non-Secure chip and not able to change state > > > + RMA - Return Merchandise Authorization > > > > A "driver" does not have a lifecycle state, a "device" does. > > > > You are putting all of these attributes in the wrong place. Put them on > > your device please, not the driver. driver-specific attributes are > > _VERY_ rare, and only for things that can modify/show for all devices > > attached to that driver. > > This driver is running on the ARM processor of the SoC. The 'device' is > the SoC itself. That's to say, there is only one device here attached to > the driver and the driver state will also be the device state. That might be true today, but maybe not tomorrow :) Anyway, again, this is device state, not driver state. > This interface has been used by user-space applications for a couple of > releases. It'll be great if it could stay in such way for compatibility. > Please > advise if this is strongly preferred to move them under devices. So this is code that is already in the tree, and is just now being documented? What .c file(s) is this referring to? As for "comptability", sysfs is made such that if a file is not present, userspace should be able to survive, that is why it is one-value-per-file. What tool is using this, and where is the source for it? thanks, greg k-h
RE: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI definitions
Thanks Greg for the comments! Please see my response inline. Regards, - Liming > -Original Message- > From: Greg Kroah-Hartman > Sent: Friday, May 17, 2019 1:59 PM > To: Liming Sun > Cc: Andy Shevchenko ; Darren Hart ; > Vadim Pasternak ; David > Woods ; platform-driver-...@vger.kernel.org; > linux-kernel@vger.kernel.org; David S. Miller > ; Mauro Carvalho Chehab ; > Jonathan Cameron > ; Nicolas Ferre ; > Paul E. McKenney > Subject: Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI > definitions > > On Fri, May 17, 2019 at 01:49:05PM -0400, Liming Sun wrote: > > This commit adds the ABI definitions exposed to userspace for > > the platform/mellanox/mlxbf-bootctl driver. > > > > Reviewed-by: Vadim Pasternak > > Signed-off-by: Liming Sun > > --- > > .../ABI/testing/sysfs-platform-mellanox-bootctl| 58 > > ++ > > MAINTAINERS| 1 + > > 2 files changed, 59 insertions(+) > > create mode 100644 > > Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > > > diff --git a/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > b/Documentation/ABI/testing/sysfs-platform-mellanox- > bootctl > > new file mode 100644 > > index 000..19a14db > > --- /dev/null > > +++ b/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > @@ -0,0 +1,58 @@ > > +What: /sys/bus/platform/drivers/mlxbf-bootctl/lifecycle_state > > +Date: May 2019 > > +KernelVersion: 5.3 > > +Contact: "Liming Sun " > > +Description: > > + The Life-cycle state of the SoC, which could be one of the > > + following values. > > + Production - Production state and can be updated to secure > > + GA Secured - Secure chip and not able to change state > > + GA Non-Secured - Non-Secure chip and not able to change state > > + RMA - Return Merchandise Authorization > > A "driver" does not have a lifecycle state, a "device" does. > > You are putting all of these attributes in the wrong place. Put them on > your device please, not the driver. driver-specific attributes are > _VERY_ rare, and only for things that can modify/show for all devices > attached to that driver. This driver is running on the ARM processor of the SoC. The 'device' is the SoC itself. That's to say, there is only one device here attached to the driver and the driver state will also be the device state. This interface has been used by user-space applications for a couple of releases. It'll be great if it could stay in such way for compatibility. Please advise if this is strongly preferred to move them under devices. > > thanks, > > greg k-h
Re: [PATCH v5 2/2] platform/mellanox/mlxbf-bootctl: Add the ABI definitions
On Fri, May 17, 2019 at 01:49:05PM -0400, Liming Sun wrote: > This commit adds the ABI definitions exposed to userspace for > the platform/mellanox/mlxbf-bootctl driver. > > Reviewed-by: Vadim Pasternak > Signed-off-by: Liming Sun > --- > .../ABI/testing/sysfs-platform-mellanox-bootctl| 58 > ++ > MAINTAINERS| 1 + > 2 files changed, 59 insertions(+) > create mode 100644 Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > > diff --git a/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > b/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > new file mode 100644 > index 000..19a14db > --- /dev/null > +++ b/Documentation/ABI/testing/sysfs-platform-mellanox-bootctl > @@ -0,0 +1,58 @@ > +What:/sys/bus/platform/drivers/mlxbf-bootctl/lifecycle_state > +Date:May 2019 > +KernelVersion: 5.3 > +Contact: "Liming Sun " > +Description: > + The Life-cycle state of the SoC, which could be one of the > + following values. > + Production - Production state and can be updated to secure > + GA Secured - Secure chip and not able to change state > + GA Non-Secured - Non-Secure chip and not able to change state > + RMA - Return Merchandise Authorization A "driver" does not have a lifecycle state, a "device" does. You are putting all of these attributes in the wrong place. Put them on your device please, not the driver. driver-specific attributes are _VERY_ rare, and only for things that can modify/show for all devices attached to that driver. thanks, greg k-h