addrmap ZynqMP_RTC {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="SetTimeWrite";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
            } setTime[31:0];
    } SetTimeWrite @ 0x0;
    reg {
        name="SetTimeRead";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } setTime[31:0];
    } SetTimeRead @ 0x4;
    reg {
        name="CalibrationWrite";
        desc = "This register has the following custom Renode callbacks: Change";
        regwidth=0x20;
            field {
                sw = rw;
            } calibrationTicks[15:0];
            field {
                sw = rw;
            } calibrationFractionalTicks[19:16];
            field {
                sw = rw;
            } calibrationFractionalTicksEnable[20:20];
    } CalibrationWrite @ 0x8;
    reg {
        name="CalibrationRead";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } calibrationTicks[15:0];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } calibrationFractionalTicks[19:16];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } calibrationFractionalTicksEnable[20:20];
    } CalibrationRead @ 0xc;
    reg {
        name="CurrentTime";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } currentTime[31:0];
    } CurrentTime @ 0x10;
    reg {
        name="Alarm";
        regwidth=0x20;
            field {
                sw = rw;
            } alarmTimestamp[31:0];
    } Alarm @ 0x18;
    reg {
        name="InterruptStatus";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
                onwrite = woclr;
            } secondInterruptFlag[0:0];
            field {
                sw = rw;
                onwrite = woclr;
            } alarmInterruptFlag[1:1];
    } InterruptStatus @ 0x20;
    reg {
        name="InterruptMask";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
            } secondInterruptEnable[0:0];
            field {
                sw = rw;
            } alarmInterruptEnable[1:1];
    } InterruptMask @ 0x24;
    reg {
        name="InterruptEnable";
        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;
            } secondInterruptEnable[0:0];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } alarmInterruptEnable[1:1];
    } InterruptEnable @ 0x28;
    reg {
        name="InterruptDisable";
        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;
            } secondInterruptEnable[0:0];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } alarmInterruptEnable[1:1];
    } InterruptDisable @ 0x2c;
    reg {
        name="Control";
        regwidth=0x20;
            field {
                sw = rw;
            } batteryEnable[31:31];
    } Control @ 0x40;
} Registers_addrmap;


};