addrmap CC2538_SSI {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="Control0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } DSS[3:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FRF[5:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPO[6:6];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPH[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SCR[15:8];
    } Control0 @ 0x0;
    reg {
        name="Control1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } LBM[0:0];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } SSE[1:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MS[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SOD[3:3];
    } Control1 @ 0x4;
    reg {
        name="Data";
        desc = "This register has the following custom Renode callbacks: Read";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } DATA[15:0];
    } Data @ 0x8;
    reg {
        name="Status";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } TFE[0:0];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } TNF[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } RNE[2:2];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } RFF[3:3];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } BSY[4:4];
    } Status @ 0xc;
    reg {
        name="ClockPrescaler";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } ClockPrescaler @ 0x10;
    reg {
        name="InterruptMask";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
            } RORIM[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } RTIM[1:1];
            field {
                sw = rw;
            } RXIM[2:2];
            field {
                sw = rw;
            } TXIM[3:3];
    } InterruptMask @ 0x14;
    reg {
        name="RawInterruptStatus";
        regwidth=0x20;
            field {
                sw = r;
            } RORRIS[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } RTRIS[1:1];
            field {
                sw = r;
            } RXRIS[2:2];
            field {
                sw = r;
            } TXRIS[3:3];
    } RawInterruptStatus @ 0x18;
    reg {
        name="MaskedInterruptStatus";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } RORMIS[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } RTMIS[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } RXMIS[2:2];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } TXMIS[3:3];
    } MaskedInterruptStatus @ 0x1c;
    reg {
        name="InterruptClear";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
                onwrite = woclr;
            } No_name_1[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } RTIC[1:1];
    } InterruptClear @ 0x20;
    reg {
        name="DMAControl";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } DMAControl @ 0x24;
    reg {
        name="ClockConfiguration";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } ClockConfiguration @ 0xfc8;
} Registers_addrmap;


};