addrmap SunxiTimer {

/* Some conversion errors detected, this might mean that the peripheral's registers structure in this file is incomplete.
 * Please refer to logs and comments in the file for more information.
 * 
 * Register "TimerXControl" overlaps another register at the same offset (0x0) and will be skipped, as it is illegal in SystemRDL.
 * Register "TimerXIntervalValue" overlaps another register at the same offset (0x4) and will be skipped, as it is illegal in SystemRDL.
 */

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="TimerIrqEnable";
        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];
    } TimerIrqEnable @ 0x0;
    /* Conversion error: Register "TimerXControl" overlaps another register at the same offset (0x0) and will be skipped, as it is illegal in SystemRDL.
    reg {
        name="TimerXControl";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;

    } TimerXControl @ 0x0;
    */
    reg {
        name="TimerStatus";
        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];
    } TimerStatus @ 0x4;
    /* Conversion error: Register "TimerXIntervalValue" overlaps another register at the same offset (0x4) and will be skipped, as it is illegal in SystemRDL.
    reg {
        name="TimerXIntervalValue";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;

    } TimerXIntervalValue @ 0x4;
    */
    reg {
        name="TimerXCurrentValue";
        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];
    } TimerXCurrentValue @ 0x8;
    reg {
        name="AvsControl";
        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];
    } AvsControl @ 0x80;
    reg {
        name="AvsCounter0";
        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];
    } AvsCounter0 @ 0x84;
    reg {
        name="AvsCounter1";
        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];
    } AvsCounter1 @ 0x88;
    reg {
        name="AvsDivisor";
        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];
    } AvsDivisor @ 0x8c;
    reg {
        name="WatchdogControl";
        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];
    } WatchdogControl @ 0x90;
    reg {
        name="WatchdogMode";
        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];
    } WatchdogMode @ 0x94;
    reg {
        name="LowOscillatorControl";
        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];
    } LowOscillatorControl @ 0x100;
    reg {
        name="RtcYearMonthDay";
        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];
    } RtcYearMonthDay @ 0x104;
    reg {
        name="RtcHourMinuteSecond";
        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];
    } RtcHourMinuteSecond @ 0x108;
    reg {
        name="AlarmDayHourMinuteSecond";
        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];
    } AlarmDayHourMinuteSecond @ 0x10c;
    reg {
        name="AlarmWeekHourMinuteSecond";
        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];
    } AlarmWeekHourMinuteSecond @ 0x110;
    reg {
        name="AlarmEnable";
        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];
    } AlarmEnable @ 0x114;
    reg {
        name="AlarmIrqEnable";
        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];
    } AlarmIrqEnable @ 0x118;
    reg {
        name="AlarmIrqStatus";
        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];
    } AlarmIrqStatus @ 0x11c;
    reg {
        name="AlarmConfig";
        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];
    } AlarmConfig @ 0x170;
} Registers_addrmap;


};