[PATCH V2 1/3] dt-bindings: nvmem: brcm,nvram: add #nvmem-cell-cells for MACs
Srinivas Kandagatla
srinivas.kandagatla at linaro.org
Fri May 12 03:14:51 PDT 2023
On 21/04/2023 09:43, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal at milecki.pl>
>
> Broadcom's NVRAM contains MACs for Ethernet interfaces. Those MACs are
> usually base addresses that are also used for calculating other MACs.
>
> For example if a router vendor decided to use gmac0 it most likely
> programmed NVRAM of each unit with a proper "et0macaddr" value. That is
> a base.
>
> Ethernet interface is usually connected to switch port. Switch usually
> includes few LAN ports and a WAN port. MAC of WAN port gets calculated
> as relative address to the interface one. Offset varies depending on
> device model.
>
> Wireless MACs may also need to be calculated using relevant offsets.
>
> To support all those scenarios let MAC NVMEM cells be referenced with an
> index specifying MAC offset. Disallow additionalProperties while at it.
>
> Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
> Reviewed-by: Rob Herring <robh at kernel.org>
> ---
Applied thanks,
--srini
> V2: Add additionalProperties: false
> ---
> .../devicetree/bindings/nvmem/brcm,nvram.yaml | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/nvmem/brcm,nvram.yaml b/Documentation/devicetree/bindings/nvmem/brcm,nvram.yaml
> index 36def7128fca..13412af7f046 100644
> --- a/Documentation/devicetree/bindings/nvmem/brcm,nvram.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/brcm,nvram.yaml
> @@ -36,14 +36,29 @@ properties:
> et0macaddr:
> type: object
> description: First Ethernet interface's MAC address
> + properties:
> + "#nvmem-cell-cells":
> + description: The first argument is a MAC address offset.
> + const: 1
> + additionalProperties: false
>
> et1macaddr:
> type: object
> description: Second Ethernet interface's MAC address
> + properties:
> + "#nvmem-cell-cells":
> + description: The first argument is a MAC address offset.
> + const: 1
> + additionalProperties: false
>
> et2macaddr:
> type: object
> description: Third Ethernet interface's MAC address
> + properties:
> + "#nvmem-cell-cells":
> + description: The first argument is a MAC address offset.
> + const: 1
> + additionalProperties: false
>
> unevaluatedProperties: false
>
More information about the linux-arm-kernel
mailing list