Skip to content

Commit 00d4b35

Browse files
Jorge Lopezjwrdegoede
authored andcommitted
platform/x86: hp-bioscfg: Documentation
Update sysfs-class-firmware-attributes with hp-bioscfg information HP BIOS Configuration driver purpose is to provide a driver supporting the latest sysfs class firmware attributes framework allowing the user to change BIOS settings and security solutions on HP Inc.’s commercial notebooks. Signed-off-by: Jorge Lopez <[email protected]> Reviewed-by: Thomas Weißschuh <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Hans de Goede <[email protected]>
1 parent 06c2afb commit 00d4b35

File tree

1 file changed

+99
-2
lines changed

1 file changed

+99
-2
lines changed

Documentation/ABI/testing/sysfs-class-firmware-attributes

Lines changed: 99 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ Description:
2222
- integer: a range of numerical values
2323
- string
2424

25+
HP specific types
26+
-----------------
27+
- ordered-list - a set of ordered list valid values
28+
29+
2530
All attribute types support the following values:
2631

2732
current_value:
@@ -126,6 +131,21 @@ Description:
126131
value will not be effective through sysfs until this rule is
127132
met.
128133

134+
HP specific class extensions
135+
------------------------------
136+
137+
On HP systems the following additional attributes are available:
138+
139+
"ordered-list"-type specific properties:
140+
141+
elements:
142+
A file that can be read to obtain the possible
143+
list of values of the <attr>. Values are separated using
144+
semi-colon (``;``) and listed according to their priority.
145+
An element listed first has the highest priority. Writing
146+
the list in a different order to current_value alters
147+
the priority order for the particular attribute.
148+
129149
What: /sys/class/firmware-attributes/*/authentication/
130150
Date: February 2021
131151
KernelVersion: 5.11
@@ -206,7 +226,7 @@ Description:
206226
Drivers may emit a CHANGE uevent when a password is set or unset
207227
userspace may check it again.
208228

209-
On Dell and Lenovo systems, if Admin password is set, then all BIOS attributes
229+
On Dell, Lenovo and HP systems, if Admin password is set, then all BIOS attributes
210230
require password validation.
211231
On Lenovo systems if you change the Admin password the new password is not active until
212232
the next boot.
@@ -296,6 +316,15 @@ Description:
296316
echo "signature" > authentication/Admin/signature
297317
echo "password" > authentication/Admin/certificate_to_password
298318

319+
HP specific class extensions
320+
--------------------------------
321+
322+
On HP systems the following additional settings are available:
323+
324+
role: enhanced-bios-auth:
325+
This role is specific to Secure Platform Management (SPM) attribute.
326+
It requires configuring an endorsement (kek) and signing certificate (sk).
327+
299328

300329
What: /sys/class/firmware-attributes/*/attributes/pending_reboot
301330
Date: February 2021
@@ -311,7 +340,7 @@ Description:
311340
== =========================================
312341
0 All BIOS attributes setting are current
313342
1 A reboot is necessary to get pending BIOS
314-
attribute changes applied
343+
attribute changes applied
315344
== =========================================
316345

317346
Note, userspace applications need to follow below steps for efficient
@@ -364,3 +393,71 @@ Description:
364393
use it to enable extra debug attributes or BIOS features for testing purposes.
365394

366395
Note that any changes to this attribute requires a reboot for changes to take effect.
396+
397+
398+
HP specific class extensions - Secure Platform Manager (SPM)
399+
--------------------------------
400+
401+
What: /sys/class/firmware-attributes/*/authentication/SPM/kek
402+
Date: March 2023
403+
KernelVersion: 5.18
404+
Contact: "Jorge Lopez" <[email protected]>
405+
Description:
406+
'kek' Key-Encryption-Key is a write-only file that can be used to configure the
407+
RSA public key that will be used by the BIOS to verify
408+
signatures when setting the signing key. When written,
409+
the bytes should correspond to the KEK certificate
410+
(x509 .DER format containing an OU). The size of the
411+
certificate must be less than or equal to 4095 bytes.
412+
413+
What: /sys/class/firmware-attributes/*/authentication/SPM/sk
414+
Date: March 2023
415+
KernelVersion: 5.18
416+
Contact: "Jorge Lopez" <[email protected]>
417+
Description:
418+
'sk' Signature Key is a write-only file that can be used to configure the RSA
419+
public key that will be used by the BIOS to verify signatures
420+
when configuring BIOS settings and security features. When
421+
written, the bytes should correspond to the modulus of the
422+
public key. The exponent is assumed to be 0x10001.
423+
424+
What: /sys/class/firmware-attributes/*/authentication/SPM/status
425+
Date: March 2023
426+
KernelVersion: 5.18
427+
Contact: "Jorge Lopez" <[email protected]>
428+
Description:
429+
'status' is a read-only file that returns ASCII text in JSON format reporting
430+
the status information.
431+
432+
"State": "not provisioned | provisioned | provisioning in progress",
433+
"Version": "Major.Minor",
434+
"Nonce": <16-bit unsigned number display in base 10>,
435+
"FeaturesInUse": <16-bit unsigned number display in base 10>,
436+
"EndorsementKeyMod": "<256 bytes in base64>",
437+
"SigningKeyMod": "<256 bytes in base64>"
438+
439+
What: /sys/class/firmware-attributes/*/attributes/Sure_Start/audit_log_entries
440+
Date: March 2023
441+
KernelVersion: 5.18
442+
Contact: "Jorge Lopez" <[email protected]>
443+
Description:
444+
'audit_log_entries' is a read-only file that returns the events in the log.
445+
446+
Audit log entry format
447+
448+
Byte 0-15: Requested Audit Log entry (Each Audit log is 16 bytes)
449+
Byte 16-127: Unused
450+
451+
What: /sys/class/firmware-attributes/*/attributes/Sure_Start/audit_log_entry_count
452+
Date: March 2023
453+
KernelVersion: 5.18
454+
Contact: "Jorge Lopez" <[email protected]>
455+
Description:
456+
'audit_log_entry_count' is a read-only file that returns the number of existing
457+
audit log events available to be read. Values are separated using comma. (``,``)
458+
459+
[No of entries],[log entry size],[Max number of entries supported]
460+
461+
log entry size identifies audit log size for the current BIOS version.
462+
The current size is 16 bytes but it can be up to 128 bytes long in future BIOS
463+
versions.

0 commit comments

Comments
 (0)