Zephyr API Documentation  2.7.0-rc2
A Scalable Open Source RTOS
Devicetree reserved-memory API

Macros

#define DT_RESERVED_MEM_GET_PTR(node_id)   _DT_RESERVED_START(node_id)
 Get the pointer to the reserved-memory region. More...
 
#define DT_RESERVED_MEM_GET_SIZE(node_id)   DT_REG_SIZE(node_id)
 Get the size of the reserved-memory region. More...
 
#define DT_RESERVED_MEM_GET_PTR_BY_PHANDLE(node_id, ph)    DT_RESERVED_MEM_GET_PTR(DT_PHANDLE(node_id, ph))
 Get the pointer to the reserved-memory region from a memory-reserved phandle. More...
 
#define DT_RESERVED_MEM_GET_SIZE_BY_PHANDLE(node_id, ph)    DT_RESERVED_MEM_GET_SIZE(DT_PHANDLE(node_id, ph))
 Get the size of the reserved-memory region from a memory-reserved phandle. More...
 

Detailed Description

Macro Definition Documentation

◆ DT_RESERVED_MEM_GET_PTR

#define DT_RESERVED_MEM_GET_PTR (   node_id)    _DT_RESERVED_START(node_id)

#include <include/devicetree/memory.h>

Get the pointer to the reserved-memory region.

Example devicetree fragment:

reserved: reserved-memory {
    compatible = "reserved-memory";
    ...
    n: node {
        reg = <0x42000000 0x1000>;
    };
 };

Example usage:

DT_RESERVED_MEM_GET_PTR(DT_NODELABEL(n)) // (uint8_t *) 0x42000000
Parameters
node_idnode identifier
Returns
pointer to the beginning of the reserved-memory region

◆ DT_RESERVED_MEM_GET_PTR_BY_PHANDLE

#define DT_RESERVED_MEM_GET_PTR_BY_PHANDLE (   node_id,
  ph 
)     DT_RESERVED_MEM_GET_PTR(DT_PHANDLE(node_id, ph))

#include <include/devicetree/memory.h>

Get the pointer to the reserved-memory region from a memory-reserved phandle.

Example devicetree fragment:

reserved: reserved-memory {
    compatible = "reserved-memory";
    ...
    res0: res {
        reg = <0x42000000 0x1000>;
        label = "res0";
    };
};

n: node {
    memory-region = <&res0>;
};

Example usage:

DT_RESERVED_MEM_GET_PTR_BY_PHANDLE(DT_NODELABEL(n), memory_region) // (uint8_t *) 0x42000000
Parameters
node_idnode identifier
phphandle to reserved-memory region
Returns
pointer to the beginning of the reserved-memory region

◆ DT_RESERVED_MEM_GET_SIZE

#define DT_RESERVED_MEM_GET_SIZE (   node_id)    DT_REG_SIZE(node_id)

#include <include/devicetree/memory.h>

Get the size of the reserved-memory region.

Example devicetree fragment:

reserved: reserved-memory {
    compatible = "reserved-memory";
    ...
    n: node {
        reg = <0x42000000 0x1000>;
    };
};

Example usage:

DT_RESERVED_MEM_GET_SIZE(DT_NODELABEL(n)) // 0x1000
Parameters
node_idnode identifier
Returns
the size of the reserved-memory region

◆ DT_RESERVED_MEM_GET_SIZE_BY_PHANDLE

#define DT_RESERVED_MEM_GET_SIZE_BY_PHANDLE (   node_id,
  ph 
)     DT_RESERVED_MEM_GET_SIZE(DT_PHANDLE(node_id, ph))

#include <include/devicetree/memory.h>

Get the size of the reserved-memory region from a memory-reserved phandle.

Example devicetree fragment:

reserved: reserved-memory {
    compatible = "reserved-memory";
    ...
    res0: res {
        reg = <0x42000000 0x1000>;
        label = "res0";
    };
};

n: node {
    memory-region = <&res0>;
};

Example usage:

DT_RESERVED_MEM_GET_SIZE_BY_PHANDLE(DT_NODELABEL(n), memory_region) // (uint8_t *) 0x42000000
Parameters
node_idnode identifier
phphandle to reserved-memory region
Returns
size of the reserved-memory region