svd-generator 0.4.4

Converts device information from flattened device tree into an SVD description
Documentation
use crate::svd::{create_bit_range, create_field, create_register, create_register_properties};
use crate::Result;

/// Creates the Synopsys DesignWare Gigabit Ethernet MAC Debug register definition.
pub fn create() -> Result<svd::RegisterCluster> {
    Ok(svd::RegisterCluster::Register(create_register(
        "debug",
        "Debug",
        0x24,
        create_register_properties(32, 0)?,
        Some(&[
            create_field(
                "rpests",
                "MAC GMII or MII Receive Protocol Engine Status",
                create_bit_range("[0:0]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "rfcfcsts",
                "MAC Receive Frame Controller FIFO Status",
                create_bit_range("[2:1]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "rwcsts",
                "MTL RX FIFO Write Controller Active",
                create_bit_range("[4:4]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "rrcsts",
                "MTL RX FIFO Read Controller - 0: IDLE, 1: RDATA, 2: RSTAT, 3: FLUSH",
                create_bit_range("[6:5]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "rxfsts",
                "MTL RX FIFO Fill-level - 0: EMPTY, 1: BT, 2: AT, 3: FULL",
                create_bit_range("[9:8]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "tpests",
                "MAC GMII or MII Transmit Protocol Engine Status",
                create_bit_range("[16:16]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "tfcsts",
                "MAC Transmit Frame Controller Status - 0: IDLE, 1: WAIT, 2: GEN_PAUSE, 3: XFER",
                create_bit_range("[18:17]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "txpaused",
                "MAC Transmitter in PAUSE",
                create_bit_range("[19:19]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "trcsts",
                "MTL Tx FIFO Read Controller Status - 0: IDLE, 1: READ, 2: TXW, 3: WRITE",
                create_bit_range("[21:20]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "twcsts",
                "MTL TX FIFO Write Controller",
                create_bit_range("[22:22]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "txfsts",
                "MTL TX FIFO Not Empty Status",
                create_bit_range("[24:24]")?,
                svd::Access::ReadWrite,
                None,
            )?,
            create_field(
                "txstsfsts",
                "MTL TX Status FIFO Full Status",
                create_bit_range("[25:25]")?,
                svd::Access::ReadWrite,
                None,
            )?,
        ]),
        None,
    )?))
}