|
Zephyr Project API 4.0.0
A Scalable Open Source RTOS
|
#include <zephyr/toolchain.h>#include <zephyr/linker/sections.h>#include <stdint.h>#include <stddef.h>#include <zephyr/kernel/mm.h>#include <zephyr/sys/sys_io.h>Go to the source code of this file.
Macros | |
| #define | DEVICE_MMIO_IS_IN_RAM |
| #define | DEVICE_MMIO_RAM mm_reg_t _mmio |
| Declare storage for MMIO information within a device's dev_data struct. | |
| #define | DEVICE_MMIO_RAM_PTR(device) (mm_reg_t *)((device)->data) |
| Return a pointer to the RAM-based storage area for a device's MMIO address. | |
| #define | DEVICE_MMIO_ROM struct z_device_mmio_rom _mmio |
| Declare storage for MMIO data within a device's config struct. | |
| #define | DEVICE_MMIO_ROM_PTR(dev) ((struct z_device_mmio_rom *)((dev)->config)) |
| Return a pointer to the ROM-based storage area for a device's MMIO information. | |
| #define | DEVICE_MMIO_ROM_INIT(node_id) ._mmio = Z_DEVICE_MMIO_ROM_INITIALIZER(node_id) |
| Initialize a DEVICE_MMIO_ROM member. | |
| #define | DEVICE_MMIO_MAP(dev, flags) |
| Map MMIO memory into the address space. | |
| #define | DEVICE_MMIO_GET(dev) (*DEVICE_MMIO_RAM_PTR(dev)) |
| Obtain the MMIO address for a device. | |
| #define | DEVICE_MMIO_NAMED_RAM(name) mm_reg_t name |
| Declare storage for MMIO data within a device's dev_data struct. | |
| #define | DEVICE_MMIO_NAMED_RAM_PTR(dev, name) (&(DEV_DATA(dev)->name)) |
| Return a pointer to the RAM storage for a device's named MMIO address. | |
| #define | DEVICE_MMIO_NAMED_ROM(name) struct z_device_mmio_rom name |
| Declare storage for MMIO data within a device's config struct. | |
| #define | DEVICE_MMIO_NAMED_ROM_PTR(dev, name) (&(DEV_CFG(dev)->name)) |
| Return a pointer to the ROM-based storage area for a device's MMIO information. | |
| #define | DEVICE_MMIO_NAMED_ROM_INIT(name, node_id) .name = Z_DEVICE_MMIO_ROM_INITIALIZER(node_id) |
| Initialize a named DEVICE_MMIO_NAMED_ROM member. | |
| #define | DEVICE_MMIO_NAMED_ROM_INIT_BY_NAME(name, node_id) .name = Z_DEVICE_MMIO_NAMED_ROM_INITIALIZER(name, node_id) |
| Initialize a named DEVICE_MMIO_NAMED_ROM member using a named DT reg property. | |
| #define | DEVICE_MMIO_NAMED_MAP(dev, name, flags) |
| Set up memory for a named MMIO region. | |
| #define | DEVICE_MMIO_NAMED_GET(dev, name) (*DEVICE_MMIO_NAMED_RAM_PTR((dev), name)) |
| Obtain a named MMIO address for a device. | |
| #define | DEVICE_MMIO_TOPLEVEL(name, node_id) |
| Declare top-level storage for MMIO information, global scope. | |
| #define | DEVICE_MMIO_TOPLEVEL_DECLARE(name) |
| Provide an extern reference to a top-level MMIO region. | |
| #define | DEVICE_MMIO_TOPLEVEL_STATIC(name, node_id) |
| Declare top-level storage for MMIO information, static scope. | |
| #define | DEVICE_MMIO_TOPLEVEL_RAM_PTR(name) &Z_TOPLEVEL_RAM_NAME(name) |
| Return a pointer to the RAM storage for a device's toplevel MMIO address. | |
| #define | DEVICE_MMIO_TOPLEVEL_ROM_PTR(name) &Z_TOPLEVEL_ROM_NAME(name) |
| Return a pointer to the ROM-based storage area for a toplevel MMIO region. | |
| #define | DEVICE_MMIO_TOPLEVEL_MAP(name, flags) |
| Set up memory for a driver'sMMIO region. | |
| #define | DEVICE_MMIO_TOPLEVEL_GET(name) ((mm_reg_t)Z_TOPLEVEL_RAM_NAME(name)) |
| Obtain the MMIO address for a device declared top-level. | |
Functions | |
| static __boot_func void | device_map (mm_reg_t *virt_addr, uintptr_t phys_addr, size_t size, uint32_t flags) |
| Set linear address for device MMIO access. | |