addrmap LSM9DS1_Magnetic {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="OffsetXLow";
        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];
    } OffsetXLow @ 0x5;
    reg {
        name="OffsetXHigh";
        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];
    } OffsetXHigh @ 0x6;
    reg {
        name="OffsetYLow";
        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];
    } OffsetYLow @ 0x7;
    reg {
        name="OffsetYHigh";
        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];
    } OffsetYHigh @ 0x8;
    reg {
        name="OffsetZLow";
        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];
    } OffsetZLow @ 0x9;
    reg {
        name="OffsetZHigh";
        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];
    } OffsetZHigh @ 0xa;
    reg {
        name="WhoAmI";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
                reset=8'b111101;
            } DUMMY[7:0];
    } WhoAmI @ 0xf;
    reg {
        name="Control1";
        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];
    } Control1 @ 0x20;
    reg {
        name="Control2";
        regwidth=0x8;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SOFT_RST[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } REBOOT[3:3];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } FS__Magnetometer_full_scale_selection[6:5];
    } Control2 @ 0x21;
    reg {
        name="Control3";
        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];
    } Control3 @ 0x22;
    reg {
        name="Control4";
        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];
    } Control4 @ 0x23;
    reg {
        name="Control5";
        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];
    } Control5 @ 0x24;
    reg {
        name="Status";
        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];
    } Status @ 0x27;
    reg {
        name="OutputXLow";
        regwidth=0x8;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } OUT_X_L_M[7:0];
    } OutputXLow @ 0x28;
    reg {
        name="OutputXHigh";
        regwidth=0x8;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } OUT_X_H_M[7:0];
    } OutputXHigh @ 0x29;
    reg {
        name="OutputYLow";
        regwidth=0x8;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } OUT_Y_L_M[7:0];
    } OutputYLow @ 0x2a;
    reg {
        name="OutputYHigh";
        regwidth=0x8;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } OUT_Y_H_M[7:0];
    } OutputYHigh @ 0x2b;
    reg {
        name="OutputZLow";
        regwidth=0x8;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } OUT_Z_L_M[7:0];
    } OutputZLow @ 0x2c;
    reg {
        name="OutputZHigh";
        regwidth=0x8;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } OUT_Z_H_M[7:0];
    } OutputZHigh @ 0x2d;
    reg {
        name="InterruptConfig";
        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];
    } InterruptConfig @ 0x30;
    reg {
        name="InterruptSource";
        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];
    } InterruptSource @ 0x31;
    reg {
        name="InterruptThresholdLow";
        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];
    } InterruptThresholdLow @ 0x32;
    reg {
        name="InterruptThresholdHigh";
        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];
    } InterruptThresholdHigh @ 0x33;
} Registers_addrmap;


};