github.com/usbarmory/tamago@v0.0.0-20240508072735-8612bbe1e454/board/nxp/mx6ullevk/mx6ullevk.go (about) 1 // MCIMX6ULL-EVK support for tamago/arm 2 // https://github.com/usbarmory/tamago 3 // 4 // Copyright (c) WithSecure Corporation 5 // https://foundry.withsecure.com 6 // 7 // Use of this source code is governed by the license 8 // that can be found in the LICENSE file. 9 10 // Package mx6ullevk provides hardware initialization, automatically on import, 11 // for the NXP MCIMX6ULL-EVK evaluation board. 12 // 13 // This package is only meant to be used with `GOOS=tamago GOARCH=arm` as 14 // supported by the TamaGo framework for bare metal Go on ARM SoCs, see 15 // https://github.com/usbarmory/tamago. 16 package mx6ullevk 17 18 import ( 19 _ "unsafe" 20 21 "github.com/usbarmory/tamago/soc/nxp/imx6ul" 22 ) 23 24 // Peripheral instances 25 var ( 26 ENET1 = imx6ul.ENET1 27 ENET2 = imx6ul.ENET2 28 29 I2C1 = imx6ul.I2C1 30 I2C2 = imx6ul.I2C2 31 32 UART1 = imx6ul.UART1 33 UART2 = imx6ul.UART2 34 35 USB1 = imx6ul.USB1 36 USB2 = imx6ul.USB2 37 38 // SD1 is the base board full size SD instance 39 USDHC1 = imx6ul.USDHC1 40 USDHC2 = imx6ul.USDHC2 41 ) 42 43 // Init takes care of the lower level SoC initialization triggered early in 44 // runtime setup. 45 // 46 //go:linkname Init runtime.hwinit 47 func Init() { 48 imx6ul.Init() 49 50 // initialize console 51 imx6ul.UART1.Init() 52 }