addrmap STM32F1GPIOPort {

/* 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.
 * 
 * Field "CNF{lowId}" overlaps another field at the same offset (0x0) and will be skipped, as it is illegal in SystemRDL.
 * Field "CNF{highId}" overlaps another field at the same offset (0x0) and will be skipped, as it is illegal in SystemRDL.
 */

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="ConfigurationLow";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } MODElowId[1:0];
            /* Conversion error: Field "CNF{lowId}" overlaps another field at the same offset (0x0) and will be skipped, as it is illegal in SystemRDL.
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CNFlowId[1:0];
            */
    } ConfigurationLow @ 0x0;
    reg {
        name="ConfigurationHigh";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } MODEhighId[1:0];
            /* Conversion error: Field "CNF{highId}" overlaps another field at the same offset (0x0) and will be skipped, as it is illegal in SystemRDL.
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CNFhighId[1:0];
            */
    } ConfigurationHigh @ 0x4;
    reg {
        name="InputData";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } IDR[15:0];
    } InputData @ 0x8;
    reg {
        name="OutputData";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } ODR[15:0];
    } OutputData @ 0xc;
    reg {
        name="BitSetReset";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } BR[31:16];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } BS[15:0];
    } BitSetReset @ 0x10;
    reg {
        name="BitReset";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } BR[15:0];
    } BitReset @ 0x14;
    reg {
        name="PortConfigurationLock";
        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];
    } PortConfigurationLock @ 0x18;
} Registers_addrmap;


};