dt-bindings: nvmem: add YAML schema for the ONIE tlv layout
Add a schema for the ONIE tlv NVMEM layout that can be found on any ONIE compatible networking device. Describe all the possible NVMEM cells that can be produced by this layout parser. Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Link: https://lore.kernel.org/r/20221118063932.6418-14-srinivas.kandagatla@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
b6c88f10e8
commit
ce9c0b06ab
|
@ -19,6 +19,7 @@ description: |
|
|||
|
||||
oneOf:
|
||||
- $ref: kontron,sl28-vpd.yaml
|
||||
- $ref: onie,tlv-layout.yaml
|
||||
|
||||
properties:
|
||||
compatible: true
|
||||
|
|
|
@ -0,0 +1,147 @@
|
|||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/nvmem/layouts/onie,tlv-layout.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: NVMEM layout of the ONIE tlv table
|
||||
|
||||
maintainers:
|
||||
- Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
|
||||
description:
|
||||
Modern networking hardware implementing the Open Compute Project ONIE
|
||||
infrastructure shall provide a non-volatile memory with a table whose the
|
||||
content is well specified and gives many information about the manufacturer
|
||||
(name, country of manufacture, etc) as well as device caracteristics (serial
|
||||
number, hardware version, mac addresses, etc). The underlaying device type
|
||||
(flash, EEPROM,...) is not specified. The exact location of each value is also
|
||||
dynamic and should be discovered at run time because it depends on the
|
||||
parameters the manufacturer decided to embed.
|
||||
|
||||
select: false
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: onie,tlv-layout
|
||||
|
||||
product-name:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
part-number:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
serial-number:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
mac-address:
|
||||
type: object
|
||||
description:
|
||||
Base MAC address for all on-module network interfaces. The first
|
||||
argument of the phandle will be treated as an offset.
|
||||
|
||||
properties:
|
||||
"#nvmem-cell-cells":
|
||||
const: 1
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
manufacture-date:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
device-version:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
label-revision:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
platforn-name:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
onie-version:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
num-macs:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
manufacturer:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
country-code:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
vendor:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
diag-version:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
service-tag:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
vendor-extension:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
eeprom@56 {
|
||||
compatible = "atmel,24c64";
|
||||
read-only;
|
||||
reg = <0x56>;
|
||||
|
||||
nvmem-layout {
|
||||
compatible = "onie,tlv-layout";
|
||||
|
||||
serial-number {
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
- |
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
flash@0 {
|
||||
compatible = "m25p80", "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
|
||||
otp {
|
||||
compatible = "user-otp";
|
||||
|
||||
nvmem-layout {
|
||||
compatible = "onie,tlv-layout";
|
||||
|
||||
mac-address {
|
||||
#nvmem-cell-cells = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
...
|
Loading…
Reference in New Issue