Commit 7e38a742 authored by David Thompson's avatar David Thompson Committed by Hans de Goede

mlxbf-bootctl: Support sysfs entries for MFG fields

This patch extends the mlxbf-bootctl driver's sysfs entries
to support read and write access for the manufacturing (MFG)
fields in the board-level EEPROM.  The MFG fields are set
once during the board manufacturing phase, and then the MFG
fields are write-protected.
Signed-off-by: default avatarDavid Thompson <davthompson@nvidia.com>
Reviewed-by: default avatarShravan Kumar Ramani <shravankr@nvidia.com>
Link: https://lore.kernel.org/r/20230821183939.3229-1-davthompson@nvidia.comSigned-off-by: default avatarHans de Goede <hdegoede@redhat.com>
parent 92c2fb8f
......@@ -84,3 +84,69 @@ Description:
The file used to write BlueField boot log with the format
"[INFO|WARN|ERR|ASSERT ]<msg>". Log level 'INFO' is used by
default if not specified.
What: /sys/bus/platform/devices/MLNXBF04:00/oob_mac
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "oob_mac" sysfs attribute holds the MAC address for
the out-of-band 1Gbps Ethernet port. This MAC address is
provided on a board-level label.
What: /sys/bus/platform/devices/MLNXBF04:00/opn
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "opn" sysfs attribute holds the board's part number.
This value is provided on a board-level label.
What: /sys/bus/platform/devices/MLNXBF04:00/sku
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "sku" sysfs attribute holds the board's SKU number.
This value is provided on a board-level label.
What: /sys/bus/platform/devices/MLNXBF04:00/modl
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "modl" sysfs attribute holds the board's model number.
This value is provided on a board-level label.
What: /sys/bus/platform/devices/MLNXBF04:00/sn
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "sn" sysfs attribute holds the board's serial number.
This value is provided on a board-level label.
What: /sys/bus/platform/devices/MLNXBF04:00/uuid
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "uuid" sysfs attribute holds the board's UUID.
This value is provided by the manufacturing team.
What: /sys/bus/platform/devices/MLNXBF04:00/rev
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "rev" sysfs attribute holds the board's revision.
This value is provided on a board-level label.
What: /sys/bus/platform/devices/MLNXBF04:00/mfg_lock
Date: August 2023
KernelVersion: 6.5
Contact: "David Thompson <davthompson@nvidia.com>"
Description:
The "mfg_lock" sysfs attribute is write-only.
A successful write to this attribute will latch the
board-level attributes into EEPROM, making them read-only.
This diff is collapsed.
......@@ -81,6 +81,14 @@
*/
#define MLXBF_BOOTCTL_FW_RESET 0x8200000D
/*
* SMC function IDs to set, get and lock the manufacturing information
* stored within the eeprom.
*/
#define MLXBF_BOOTCTL_SET_MFG_INFO 0x8200000E
#define MLXBF_BOOTCTL_GET_MFG_INFO 0x8200000F
#define MLXBF_BOOTCTL_LOCK_MFG_INFO 0x82000011
/*
* SMC function IDs to set and get the large ICM carveout size
* stored in the eeprom.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment