[PATCH stblinux.git 1/2] dt-bindings: firmware: add Broadcom's NVRAM memory mapping

Rob Herring robh at kernel.org
Mon Mar 8 18:43:08 GMT 2021


On Tue, Mar 02, 2021 at 08:44:04AM +0100, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal at milecki.pl>
> 
> NVRAM structure contains device data and can be accessed using MMIO.
> 
> Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
> ---
>  .../bindings/firmware/brcm,nvram.yaml         | 41 +++++++++++++++++++
>  1 file changed, 41 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/firmware/brcm,nvram.yaml
> 
> diff --git a/Documentation/devicetree/bindings/firmware/brcm,nvram.yaml b/Documentation/devicetree/bindings/firmware/brcm,nvram.yaml
> new file mode 100644
> index 000000000000..12af8e2e7c9c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/firmware/brcm,nvram.yaml
> @@ -0,0 +1,41 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/firmware/brcm,nvram.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Broadcom's NVRAM
> +
> +maintainers:
> +  - Rafał Miłecki <rafal at milecki.pl>
> +
> +description: |
> +  NVRAM is a structure containing device specific environment variables.
> +  It is used for storing device configuration, booting parameters and
> +  calibration data.

The structure of the data is fully discoverable just from a genericish 
'brcm,nvram'?

And it's a dedicated memory outside of regular RAM?

> +
> +  It's required very early in booting process and so is made available
> +  using memory mapping.
> +
> +  NVRAM can be found on Broadcom BCM47xx MIPS, Northstar ARM Cortex-A9
> +  and some more devices.
> +
> +properties:
> +  compatible:
> +    const: brcm,nvram
> +
> +  reg:
> +    description: memory region with NVRAM data
> +    maxItems: 1
> +
> +required:
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    nvram at 1e000000 {
> +         compatible = "brcm,nvram";
> +         reg = <0x1e000000 0x10000>;
> +    };
> -- 
> 2.26.2
> 



More information about the linux-arm-kernel mailing list