Ethos-U Integration for Cortex-M
Ethos-U Driver
Loading...
Searching...
No Matches

struct definitions in ethosu_driver.h More...

Data Structures

struct  ethosu_driver
 Driver handle. More...
struct  ethosu_driver_version
 Driver version. More...
struct  ethosu_job
 Driver job state. More...
struct  ethosu_id
 Hardware Identification Information. More...
struct  ethosu_config
 Hardware Configuration Information. More...
struct  ethosu_hw_info
 Hardware Information. More...
struct  ethosu_pmu_ops
 Variant-specific PMU operations. More...
struct  ethosu_pmu_desc
 Variant-specific PMU descriptor. More...
struct  ethosu_device_ops
 Variant-specific device operations. More...
struct  ethosu_device_caps
 NPU product capabilities. More...
struct  ethosu_device
 Device state owned by a driver instance. More...
struct  ethosu_device_config
 Variant-specific device configuration wrapper. More...

Description

struct definitions in ethosu_driver.h


Data Structure Documentation

◆ ethosu_driver

struct ethosu_driver

Driver handle.

Caller-allocated driver handle. Initialize it to zero before first use and do not modify its members.

◆ ethosu_driver_version

struct ethosu_driver_version

Driver version.

This structure holds Ethos-U driver implementation version:

{
uint8_t major;
uint8_t minor;
uint8_t patch;
};

◆ ethosu_job

struct ethosu_job

Driver job state.

Internal job state. Applications must not modify it.

◆ ethosu_id

struct ethosu_id

Hardware Identification Information.

This structure holds hardware ID:

struct ethosu_id
{
uint32_t version_status; ///< Version status
uint32_t version_minor; ///< Version minor
uint32_t version_major; ///< Version major
uint32_t product_major; ///< Product major
uint32_t arch_patch_rev; ///< Architecture version patch
uint32_t arch_minor_rev; ///< Architecture version minor
uint32_t arch_major_rev; ///< Architecture version major
};
Data Fields
uint32_t version_status Version status.
uint32_t version_minor Version minor.
uint32_t version_major Version major.
uint32_t product_major Product major.
uint32_t arch_patch_rev Architecture version patch.
uint32_t arch_minor_rev Architecture version minor.
uint32_t arch_major_rev Architecture version major.

◆ ethosu_config

struct ethosu_config

Hardware Configuration Information.

This structure holds configuration information:

{
uint32_t macs_per_cc; ///< MACs per clock cycle
uint32_t cmd_stream_version; ///< NPU command stream version
uint32_t custom_dma; ///< Custom DMA enabled
};

The macs_per_cc member contains the encoded hardware field, not the literal number of MACs. The number of MACs per clock cycle is (1U << macs_per_cc).

Data Fields
uint32_t macs_per_cc MACs per clock cycle.
uint32_t cmd_stream_version NPU command stream version.
uint32_t custom_dma Custom DMA enabled.

◆ ethosu_hw_info

struct ethosu_hw_info

Hardware Information.

This structure holds Ethos-U hardware information:

{
struct ethosu_id version;
struct ethosu_config cfg;
};

◆ ethosu_pmu_ops

struct ethosu_pmu_ops

Variant-specific PMU operations.

Internal operation table selected for the NPU family associated with a driver instance.

◆ ethosu_pmu_desc

struct ethosu_pmu_desc

Variant-specific PMU descriptor.

Associates a driver instance with its PMU operation table.

◆ ethosu_device_ops

struct ethosu_device_ops

Variant-specific device operations.

Internal operation table implemented by each Ethos-U family backend.

◆ ethosu_device_caps

struct ethosu_device_caps

NPU product capabilities.

Identifies the Ethos-U product, its encoded MAC configuration, and optional feature bits.

◆ ethosu_device

struct ethosu_device

Device state owned by a driver instance.

Holds the selected backend, register base, capabilities, configuration, and optional per-driver user operations. Applications must not modify it.

◆ ethosu_device_config

struct ethosu_device_config

Variant-specific device configuration wrapper.

Points to the configuration structure expected by the selected device backend.