github.com/f-secure-foundry/tamago@v0.0.0-20220307101044-d73fcdd7f11b/board/f-secure/usbarmory/mark-two/i2c.go (about)

     1  // USB armory Mk II support for tamago/arm
     2  // https://github.com/f-secure-foundry/tamago
     3  //
     4  // Copyright (c) F-Secure Corporation
     5  // https://foundry.f-secure.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 usbarmory
    11  
    12  import (
    13  	"github.com/f-secure-foundry/tamago/soc/imx6"
    14  )
    15  
    16  // The USB armory Mk II has the following components accessible as I²C slaves.
    17  const (
    18  	// Power management controller
    19  	PF1510_ADDR = 0x08
    20  	// Cryptographic co-processor (rev. γ only)
    21  	SE050_ADDR = 0x48
    22  	// Cryptographic co-processor (rev. β only)
    23  	A71CH_ADDR = 0x48
    24  	// Cryptographic co-processor (rev. β only)
    25  	ATECC_ADDR = 0x60
    26  	// Type-C plug port controller
    27  	TUSB320_ADDR = 0x61
    28  	// Type-C receptacle port controller
    29  	FUSB303_ADDR = 0x31
    30  )
    31  
    32  func init() {
    33  	// I2C1 is used to enable the USB receptacle controller as well as low
    34  	// switch SD card signaling to low voltage.
    35  	imx6.I2C1.Init()
    36  }