addrmap BetrustedSocI2C {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="ClockPrescale";
        regwidth=0x20;
            field {
                sw = rw;
            } No_name_1[15:0];
    } ClockPrescale @ 0x0;
    reg {
        name="Control";
        regwidth=0x20;
            field {
                sw = rw;
            } No_name_2[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } Interrupt_enable[6:6];
    } Control @ 0x4;
    reg {
        name="Transmit";
        regwidth=0x20;
            field {
                sw = w;
            } No_name_3[7:0];
    } Transmit @ 0x8;
    reg {
        name="Receive";
        regwidth=0x20;
            field {
                sw = r;
            } No_name_4[7:0];
    } Receive @ 0xc;
    reg {
        name="Command";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = w;
            } No_name_9[7:7];
            field {
                sw = w;
            } No_name_5_[6:6];
            field {
                sw = w;
            } No_name_6_[5:5];
            field {
                sw = w;
            } No_name_7_[4:4];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } ACK[3:3];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } No_name_8_[0:0];
    } Command @ 0x10;
    reg {
        name="Status";
        regwidth=0x20;
            field {
                sw = r;
            } No_name_11[7:7];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } Busy[6:6];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } Arbitration_lost[5:5];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } Transfer_in_progress[1:1];
            field {
                sw = r;
            } No_name_10_[0:0];
    } Status @ 0x14;
    reg {
        name="Reset";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } No_name_12[0:0];
    } Reset @ 0x18;
    reg {
        name="EventStatus";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } TX_RX_DONE_STATUS[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } I2C_INT_STATUS[0:0];
    } EventStatus @ 0x1c;
    reg {
        name="EventPending";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Change.";
                sw = rw;
                onwrite = woclr;
            } TX_RX_DONE_PENDING[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Change.";
                sw = rw;
                onwrite = woclr;
            } I2C_INT_PENDING[0:0];
    } EventPending @ 0x20;
    reg {
        name="EventEnable";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Change.";
                sw = rw;
            } TX_RX_DONE_ENABLE[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Change.";
                sw = rw;
            } I2C_INT_ENABLE[0:0];
    } EventEnable @ 0x24;
} Registers_addrmap;


};