addrmap RenesasRZG_SPI {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="Control";
        desc = "This register has the following custom Renode callbacks: Change";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MODFEN[2:2];
            field {
                sw = rw;
            } MSTR[3:3];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPEIE[4:4];
            field {
                sw = rw;
            } SPTIE[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPE[6:6];
            field {
                sw = rw;
            } SPRIE[7:7];
    } Control @ 0x0;
    reg {
        name="SlaveSelectPolarity";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SSL0P[0:0];
    } SlaveSelectPolarity @ 0x1;
    reg {
        name="PinControl";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPLP[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MOIFV[4:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MOIFE[5:5];
    } PinControl @ 0x2;
    reg {
        name="Status";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } OVRF[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MODF[2:2];
            field {
                sw = r;
                reset=1'b1;
            } SPTEF[5:5];
            field {
                sw = r;
                reset=1'b1;
            } TEND[6:6];
            field {
                sw = r;
            } SPRF[7:7];
    } Status @ 0x3;
    reg {
        name="Data";
        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];
    } Data @ 0x4;
    reg {
        name="SequenceControl";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPSLN[1:0];
    } SequenceControl @ 0x8;
    reg {
        name="SequenceStatus";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPCP0[1:0];
    } SequenceStatus @ 0x9;
    reg {
        name="BitRate";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=8'b11111111;
            } SPBR[7:0];
    } BitRate @ 0xa;
    reg {
        name="DataControl";
        regwidth=0x8;
            field {
                sw = rw;
                reset=2'b1;
            } SPLW[6:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TXDMY[7:7];
    } DataControl @ 0xb;
    reg {
        name="ClockDelay";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SCKDL[2:0];
    } ClockDelay @ 0xc;
    reg {
        name="SlaveSelectNegationDelay";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SLNDL[2:0];
    } SlaveSelectNegationDelay @ 0xd;
    reg {
        name="NextAccessDelay";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SPNDL[2:0];
    } NextAccessDelay @ 0xe;
    reg {
        name="Command0";
        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];
    } Command0 @ 0x10;
    reg {
        name="Command1";
        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];
    } Command1 @ 0x12;
    reg {
        name="Command2";
        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];
    } Command2 @ 0x14;
    reg {
        name="Command3";
        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];
    } Command3 @ 0x16;
    reg {
        name="BufferControl";
        regwidth=0x8;
            field {
                sw = rw;
            } RXTRG[2:0];
            field {
                sw = rw;
            } TXTRG[5:4];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } RXRST[6:6];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } TXRST[7:7];
    } BufferControl @ 0x20;
    reg {
        name="BufferDataCountSetting";
        regwidth=0x10;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } R[5:0];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } T[11:8];
    } BufferDataCountSetting @ 0x22;
} Registers_addrmap;


};