text: #pragma once 
  #include <Register/Utility.hpp>
  namespace Kvasir {
  //Multi-function Serial Interface 0
      namespace Mfs0UartScr{    ///<Serial Control Register
          using Addr = Register::Address<0x40038001,0xffffff60,0x00000000,unsigned char>;
          ///Programmable Clear bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> upcl{}; 
          ///Received interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> rie{}; 
          ///Transmit interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> tie{}; 
          ///Transmit bus idle interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> tbie{}; 
          ///Received operation enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> rxe{}; 
          ///Transmission operation enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> txe{}; 
      }
      namespace Mfs0UartSmr{    ///<Serial Mode Register
          using Addr = Register::Address<0x40038000,0xffffff02,0x00000000,unsigned char>;
          ///Operation mode set bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,5),Register::ReadWriteAccess,unsigned> md{}; 
          ///Wake-up control bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> wucr{}; 
          ///Stop bit length select bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> sbl{}; 
          ///Transfer direction select bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> bds{}; 
          ///Serial data output enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> soe{}; 
      }
      namespace Mfs0UartSsr{    ///<Serial Status Register
          using Addr = Register::Address<0x40038005,0xffffff40,0x00000000,unsigned char>;
          ///Received error flag clear bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> rec{}; 
          ///Parity error flag bit (only functions in operation mode 0) 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> pe{}; 
          ///Framing error flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> fre{}; 
          ///Overrun error flag bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> ore{}; 
          ///Received data full flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> rdrf{}; 
          ///Transmit data empty flag bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> tdre{}; 
          ///Transmit bus idle flag
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> tbi{}; 
      }
      namespace Mfs0UartEscr{    ///<Extended Communication Control Register
          using Addr = Register::Address<0x40038004,0xffffff00,0x00000000,unsigned char>;
          ///Flow control enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> flwen{}; 
          ///Extension stop bit length select bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::ReadWriteAccess,unsigned> esbl{}; 
          ///Inverted serial data format bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> inv{}; 
          ///Parity enable bit (only functions in operation mode 0) 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> pen{}; 
          ///Parity select bit (only functions in operation mode 0)
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> p{}; 
          ///Data length select bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,0),Register::ReadWriteAccess,unsigned> l{}; 
      }
      namespace Mfs0UartRdr{    ///<Received Data Register
          using Addr = Register::Address<0x40038008,0xffffffff,0x00000000,unsigned>;
      }
      namespace Mfs0UartTdr{    ///<Transmit Data Register
          using Addr = Register::Address<0x40038008,0xffffffff,0x00000000,unsigned>;
      }
      namespace Mfs0UartBgr{    ///<Baud Rate Generator Registers
          using Addr = Register::Address<0x4003800c,0xffff0000,0x00000000,unsigned>;
          ///External clock select bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(15,15),Register::ReadWriteAccess,unsigned> ext{}; 
          ///Baud Rate Generator Registers 1
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(14,8),Register::ReadWriteAccess,unsigned> bgr1{}; 
          ///Baud Rate Generator Registers 0
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,0),Register::ReadWriteAccess,unsigned> bgr0{}; 
      }
      namespace Mfs0UartFcr1{    ///<FIFO Control Register 1
          using Addr = Register::Address<0x40038015,0xffffffe0,0x00000000,unsigned char>;
          ///Re-transmission data lost detect enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> flste{}; 
          ///Received FIFO idle detection enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> friie{}; 
          ///Transmit FIFO data request bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> fdrq{}; 
          ///Transmit FIFO interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> ftie{}; 
          ///FIFO select bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> fsel{}; 
      }
      namespace Mfs0UartFcr0{    ///<FIFO Control Register 0
          using Addr = Register::Address<0x40038014,0xffffff80,0x00000000,unsigned char>;
          ///FIFO re-transmit data lost flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> flst{}; 
          ///FIFO pointer reload bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> fld{}; 
          ///FIFO pointer save bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> fset{}; 
          ///FIFO2 reset bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> fcl2{}; 
          ///FIFO1 reset bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> fcl1{}; 
          ///FIFO2 operation enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> fe2{}; 
          ///FIFO1 operation enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> fe1{}; 
      }
      namespace Mfs0UartFbyte1{    ///<FIFO Byte Register 1
          using Addr = Register::Address<0x40038018,0xffffffff,0x00000000,unsigned char>;
      }
      namespace Mfs0UartFbyte2{    ///<FIFO Byte Register 2
          using Addr = Register::Address<0x40038019,0xffffffff,0x00000000,unsigned char>;
      }
      namespace Mfs0CsioScr{    ///<Serial Control Register
          using Addr = Register::Address<0x40038001,0xffffff00,0x00000000,unsigned char>;
          ///Programmable clear bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> upcl{}; 
          ///Master/Slave function select bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::ReadWriteAccess,unsigned> ms{}; 
          ///SPI corresponding bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> spi{}; 
          ///Received interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> rie{}; 
          ///Transmit interrupt enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> tie{}; 
          ///Transmit bus idle interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> tbie{}; 
          ///Data received enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> rxe{}; 
          ///Data transmission enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> txe{}; 
      }
      namespace Mfs0CsioSmr{    ///<Serial Mode Register
          using Addr = Register::Address<0x40038000,0xffffff00,0x00000000,unsigned char>;
          ///Operation mode set bits
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,5),Register::ReadWriteAccess,unsigned> md{}; 
          ///Wake-up control bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> wucr{}; 
          ///Serial clock invert bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> scinv{}; 
          ///Transfer direction select bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> bds{}; 
          ///Master mode serial clock output enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> scke{}; 
          ///Serial data output enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> soe{}; 
      }
      namespace Mfs0CsioSsr{    ///<Serial Status Register
          using Addr = Register::Address<0x40038005,0xffffff70,0x00000000,unsigned char>;
          ///Received error flag clear bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> rec{}; 
          ///Overrun error flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> ore{}; 
          ///Received data full flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> rdrf{}; 
          ///Transmit data empty flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> tdre{}; 
          ///Transmit bus idle flag bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> tbi{}; 
      }
      namespace Mfs0CsioEscr{    ///<Extended Communication Control Register
          using Addr = Register::Address<0x40038004,0xffffff60,0x00000000,unsigned char>;
          ///Serial output pin set bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> sop{}; 
          ///Data transmit/received wait select bits
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,3),Register::ReadWriteAccess,unsigned> wt{}; 
          ///Data length select bits
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,0),Register::ReadWriteAccess,unsigned> l{}; 
      }
      namespace Mfs0CsioRdr{    ///<Received Data Register
          using Addr = Register::Address<0x40038008,0xffffffff,0x00000000,unsigned>;
      }
      namespace Mfs0CsioTdr{    ///<Transmit Data Register
          using Addr = Register::Address<0x40038008,0xffffffff,0x00000000,unsigned>;
      }
      namespace Mfs0CsioBgr{    ///<Baud Rate Generator Registers
          using Addr = Register::Address<0x4003800c,0xffff8000,0x00000000,unsigned>;
          ///Baud Rate Generator Registers 1
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(14,8),Register::ReadWriteAccess,unsigned> bgr1{}; 
          ///Baud Rate Generator Registers 0
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,0),Register::ReadWriteAccess,unsigned> bgr0{}; 
      }
      namespace Mfs0CsioFcr1{    ///<FIFO Control Register 1
          using Addr = Register::Address<0x40038015,0xffffffe0,0x00000000,unsigned char>;
          ///Re-transmission data lost detect enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> flste{}; 
          ///Received FIFO idle detection enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> friie{}; 
          ///Transmit FIFO data request bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> fdrq{}; 
          ///Transmit FIFO interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> ftie{}; 
          ///FIFO select bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> fsel{}; 
      }
      namespace Mfs0CsioFcr0{    ///<FIFO Control Register 0
          using Addr = Register::Address<0x40038014,0xffffff80,0x00000000,unsigned char>;
          ///FIFO re-transmit data lost flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> flst{}; 
          ///FIFO pointer reload bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> fld{}; 
          ///FIFO pointer save bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> fset{}; 
          ///FIFO2 reset bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> fcl2{}; 
          ///FIFO1 reset bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> fcl1{}; 
          ///FIFO2 operation enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> fe2{}; 
          ///FIFO1 operation enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> fe1{}; 
      }
      namespace Mfs0CsioFbyte1{    ///<FIFO Byte Register 1
          using Addr = Register::Address<0x40038018,0xffffffff,0x00000000,unsigned char>;
      }
      namespace Mfs0CsioFbyte2{    ///<FIFO Byte Register 2
          using Addr = Register::Address<0x40038019,0xffffffff,0x00000000,unsigned char>;
      }
      namespace Mfs0I2cIbcr{    ///<I2C Bus Control Register
          using Addr = Register::Address<0x40038001,0xffffff00,0x00000000,unsigned char>;
          ///Master/slave select bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> mss{}; 
          ///Operation flag/iteration start condition generation bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::ReadWriteAccess,unsigned> actScc{}; 
          ///Data byte acknowledge enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> acke{}; 
          ///Wait selection bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> wsel{}; 
          ///Condition detection interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> cnde{}; 
          ///Interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> inte{}; 
          ///Bus error flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> ber{}; 
          ///interrupt flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> int_{}; 
      }
      namespace Mfs0I2cSmr{    ///<Serial Mode Register
          using Addr = Register::Address<0x40038000,0xffffff03,0x00000000,unsigned char>;
          ///operation mode set bits
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,5),Register::ReadWriteAccess,unsigned> md{}; 
          ///Wake-up control bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> wucr{}; 
          ///Received interrupt enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> rie{}; 
          ///Transmit interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> tie{}; 
      }
      namespace Mfs0I2cIbsr{    ///<I2C Bus Status Register
          using Addr = Register::Address<0x40038004,0xffffff00,0x00000000,unsigned char>;
          ///First byte bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> fbt{}; 
          ///Acknowledge flag bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> rack{}; 
          ///Reserved address detection bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> rsa{}; 
          ///Data direction bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> trx{}; 
          ///Arbitration lost bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> al{}; 
          ///Iteration start condition check bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> rsc{}; 
          ///Stop condition check bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> spc{}; 
          ///Bus state bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> bb{}; 
      }
      namespace Mfs0I2cSsr{    ///<Serial Status Register 
          using Addr = Register::Address<0x40038005,0xffffff00,0x00000000,unsigned char>;
          ///Received error flag clear bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> rec{}; 
          ///Transmit empty flag set bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::ReadWriteAccess,unsigned> tset{}; 
          ///DMA mode enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> dma{}; 
          ///Transmit bus idle interrupt enable bit (Effective only when DMA mode is enabled) 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> tbie{}; 
          ///Overrun error flag bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> ore{}; 
          ///Received data full flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> rdrf{}; 
          ///Transmit data empty flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> tdre{}; 
          ///Transmit bus idle flag bit (Effective only when DMA mode is enabled) 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> tbi{}; 
      }
      namespace Mfs0I2cRdr{    ///<Received Data Register
          using Addr = Register::Address<0x40038008,0xffffffff,0x00000000,unsigned>;
      }
      namespace Mfs0I2cTdr{    ///<Transmit Data Register
          using Addr = Register::Address<0x40038008,0xffffffff,0x00000000,unsigned>;
      }
      namespace Mfs0I2cIsmk{    ///<7-bit Slave Address Mask Register
          using Addr = Register::Address<0x40038011,0xffffff00,0x00000000,unsigned char>;
          ///I2C interface operation enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> en{}; 
          ///Slave address mask bits
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,0),Register::ReadWriteAccess,unsigned> sm{}; 
      }
      namespace Mfs0I2cIsba{    ///<7-bit Slave Address Register
          using Addr = Register::Address<0x40038010,0xffffff00,0x00000000,unsigned char>;
          ///Slave address enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,7),Register::ReadWriteAccess,unsigned> saen{}; 
          ///7-bit slave address
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,0),Register::ReadWriteAccess,unsigned> sa{}; 
      }
      namespace Mfs0I2cBgr{    ///<Baud Rate Generator Registers
          using Addr = Register::Address<0x4003800c,0xffff8000,0x00000000,unsigned>;
          ///Baud Rate Generator Registers 1
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(14,8),Register::ReadWriteAccess,unsigned> bgr1{}; 
          ///Baud Rate Generator Registers 0
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(7,0),Register::ReadWriteAccess,unsigned> bgr0{}; 
      }
      namespace Mfs0I2cFcr1{    ///<FIFO Control Register 1
          using Addr = Register::Address<0x40038015,0xffffffe0,0x00000000,unsigned char>;
          ///Re-transmission data lost detect enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> flste{}; 
          ///Received FIFO idle detection enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> friie{}; 
          ///Transmit FIFO data request bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> fdrq{}; 
          ///Transmit FIFO interrupt enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> ftie{}; 
          ///FIFO select bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> fsel{}; 
      }
      namespace Mfs0I2cFcr0{    ///<FIFO Control Register 0
          using Addr = Register::Address<0x40038014,0xffffff80,0x00000000,unsigned char>;
          ///FIFO re-transmit data lost flag bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(6,6),Register::Access<Register::AccessType::readOnly,Register::ReadActionType::normal,Register::ModifiedWriteValueType::normal>,unsigned> flst{}; 
          ///FIFO pointer reload bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> fld{}; 
          ///FIFO pointer save bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> fset{}; 
          ///FIFO2 reset bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> fcl2{}; 
          ///FIFO1 reset bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> fcl1{}; 
          ///FIFO2 operation enable bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> fe2{}; 
          ///FIFO1 operation enable bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> fe1{}; 
      }
      namespace Mfs0I2cFbyte1{    ///<FIFO Byte Register 1
          using Addr = Register::Address<0x40038018,0xffffffff,0x00000000,unsigned char>;
      }
      namespace Mfs0I2cFbyte2{    ///<FIFO Byte Register 2
          using Addr = Register::Address<0x40038019,0xffffffff,0x00000000,unsigned char>;
      }
      namespace Mfs0I2cEibcr{    ///<Extension I2C Bus Control Register
          using Addr = Register::Address<0x4003801d,0xffffffc0,0x00000000,unsigned char>;
          ///SDA status bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(5,5),Register::ReadWriteAccess,unsigned> sdas{}; 
          ///SCL status bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(4,4),Register::ReadWriteAccess,unsigned> scls{}; 
          ///SDA output control bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(3,3),Register::ReadWriteAccess,unsigned> sdac{}; 
          ///SCL output control bit
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(2,2),Register::ReadWriteAccess,unsigned> sclc{}; 
          ///Serial output enabled bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(1,1),Register::ReadWriteAccess,unsigned> soce{}; 
          ///Bus error control bit 
          constexpr Register::FieldLocation<Addr,Register::maskFromRange(0,0),Register::ReadWriteAccess,unsigned> bec{}; 
      }
  }
  