148 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/nvmem/layouts/onie,tlv-layout.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: NVMEM layout of the ONIE tlv table8 9maintainers:10 - Miquel Raynal <miquel.raynal@bootlin.com>11 12description:13 Modern networking hardware implementing the Open Compute Project ONIE14 infrastructure shall provide a non-volatile memory with a table whose the15 content is well specified and gives many information about the manufacturer16 (name, country of manufacture, etc) as well as device caracteristics (serial17 number, hardware version, mac addresses, etc). The underlying device type18 (flash, EEPROM,...) is not specified. The exact location of each value is also19 dynamic and should be discovered at run time because it depends on the20 parameters the manufacturer decided to embed.21 22select: false23 24properties:25 compatible:26 const: onie,tlv-layout27 28 product-name:29 type: object30 additionalProperties: false31 32 part-number:33 type: object34 additionalProperties: false35 36 serial-number:37 type: object38 additionalProperties: false39 40 mac-address:41 type: object42 description:43 Base MAC address for all on-module network interfaces. The first44 argument of the phandle will be treated as an offset.45 46 properties:47 "#nvmem-cell-cells":48 const: 149 50 additionalProperties: false51 52 manufacture-date:53 type: object54 additionalProperties: false55 56 device-version:57 type: object58 additionalProperties: false59 60 label-revision:61 type: object62 additionalProperties: false63 64 platform-name:65 type: object66 additionalProperties: false67 68 onie-version:69 type: object70 additionalProperties: false71 72 num-macs:73 type: object74 additionalProperties: false75 76 manufacturer:77 type: object78 additionalProperties: false79 80 country-code:81 type: object82 additionalProperties: false83 84 vendor:85 type: object86 additionalProperties: false87 88 diag-version:89 type: object90 additionalProperties: false91 92 service-tag:93 type: object94 additionalProperties: false95 96 vendor-extension:97 type: object98 additionalProperties: false99 100required:101 - compatible102 103additionalProperties: false104 105examples:106 - |107 spi {108 #address-cells = <1>;109 #size-cells = <0>;110 111 eeprom@56 {112 compatible = "atmel,24c64";113 read-only;114 reg = <0x56>;115 116 nvmem-layout {117 compatible = "onie,tlv-layout";118 119 serial-number {120 };121 };122 };123 };124 125 - |126 spi {127 #address-cells = <1>;128 #size-cells = <0>;129 130 flash@0 {131 compatible = "m25p80", "jedec,spi-nor";132 reg = <0>;133 134 otp {135 compatible = "user-otp";136 137 nvmem-layout {138 compatible = "onie,tlv-layout";139 140 mac-address {141 #nvmem-cell-cells = <1>;142 };143 };144 };145 };146 };147...148