addrmap IMXRT_GPIO {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="Data";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } GR___GPIO_data_register[31:0];
    } Data @ 0x0;
    reg {
        name="Direction";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } GDIR___GPIO_direction_register[31:0];
    } Direction @ 0x4;
    reg {
        name="PadStatus";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } PSR___GPIO_pad_status_register[31:0];
    } PadStatus @ 0x8;
    reg {
        name="Config1";
        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];
    } Config1 @ 0xc;
    reg {
        name="Config2";
        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];
    } Config2 @ 0x10;
    reg {
        name="Mask";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } IMR___GPIO_interrupt_mask_register[31:0];
    } Mask @ 0x14;
    reg {
        name="Status";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
                onwrite = woclr;
            } ISR___GPIO_interrupt_status_register[31:0];
    } Status @ 0x18;
    reg {
        name="EdgeSelect";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } EDGE_SEL___GPIO_edge_select_register[31:0];
    } EdgeSelect @ 0x1c;
    reg {
        name="DataSet";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } DR_SET___GPIO_data_register_SET[31:0];
    } DataSet @ 0x84;
    reg {
        name="DataClear";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } DR_CLEAR___GPIO_data_register_CLEAR[31:0];
    } DataClear @ 0x88;
    reg {
        name="DataToggle";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } DR_TOGGLE___GPIO_data_register_TOGGLE[31:0];
    } DataToggle @ 0x8c;
} Registers_addrmap;


};