1 # SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
 
   3 # SPDX-License-Identifier: MIT
 
   4 """Allwinner H616 Pin Names"""
 
   5 from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
 
   8 with open("/sys/class/gpio/gpiochip0/label", "r") as f:
 
   9     label = f.read().strip()
 
  10     if label == "300b000.pinctrl":
 
  14 PC0 = Pin((__chip_num, 64))
 
  16 PC1 = Pin((__chip_num, 65))
 
  17 PC2 = Pin((__chip_num, 66))
 
  19 PC3 = Pin((__chip_num, 67))
 
  21 PC4 = Pin((__chip_num, 68))
 
  23 PC5 = Pin((__chip_num, 69))
 
  24 PC6 = Pin((__chip_num, 70))
 
  25 PC7 = Pin((__chip_num, 71))
 
  26 PC8 = Pin((__chip_num, 72))
 
  27 PC9 = Pin((__chip_num, 73))
 
  28 PC10 = Pin((__chip_num, 74))
 
  29 PC11 = Pin((__chip_num, 75))
 
  30 PC12 = Pin((__chip_num, 76))
 
  31 PC13 = Pin((__chip_num, 77))
 
  32 PC14 = Pin((__chip_num, 78))
 
  33 PC15 = Pin((__chip_num, 79))
 
  35 PF0 = Pin((__chip_num, 160))
 
  36 PF1 = Pin((__chip_num, 161))
 
  37 PF2 = Pin((__chip_num, 162))
 
  38 PF3 = Pin((__chip_num, 163))
 
  39 PF4 = Pin((__chip_num, 164))
 
  40 PF5 = Pin((__chip_num, 165))
 
  41 PF6 = Pin((__chip_num, 166))
 
  43 PG0 = Pin((__chip_num, 192))
 
  44 PG1 = Pin((__chip_num, 193))
 
  45 PG2 = Pin((__chip_num, 194))
 
  46 PG3 = Pin((__chip_num, 195))
 
  47 PG4 = Pin((__chip_num, 196))
 
  48 PG5 = Pin((__chip_num, 197))
 
  49 PG6 = Pin((__chip_num, 198))
 
  50 PG7 = Pin((__chip_num, 199))
 
  51 PG8 = Pin((__chip_num, 200))
 
  52 PG9 = Pin((__chip_num, 201))
 
  53 PG10 = Pin((__chip_num, 202))
 
  54 PG11 = Pin((__chip_num, 203))
 
  55 PG12 = Pin((__chip_num, 204))
 
  56 PG13 = Pin((__chip_num, 205))
 
  57 PG14 = Pin((__chip_num, 206))
 
  58 PG15 = Pin((__chip_num, 207))
 
  59 PG16 = Pin((__chip_num, 208))
 
  60 PG17 = Pin((__chip_num, 209))
 
  61 PG18 = Pin((__chip_num, 210))
 
  62 PG19 = Pin((__chip_num, 211))
 
  64 PH0 = Pin((__chip_num, 224))
 
  65 PH1 = Pin((__chip_num, 225))
 
  66 PH2 = Pin((__chip_num, 226))
 
  68 PH3 = Pin((__chip_num, 227))
 
  70 PH4 = Pin((__chip_num, 228))
 
  72 PH5 = Pin((__chip_num, 229))
 
  76 PH6 = Pin((__chip_num, 230))
 
  79 PH7 = Pin((__chip_num, 231))
 
  81 PH8 = Pin((__chip_num, 232))
 
  83 PH9 = Pin((__chip_num, 233))
 
  85 PH10 = Pin((__chip_num, 234))
 
  87 PI0 = Pin((__chip_num, 256))
 
  88 PI1 = Pin((__chip_num, 257))
 
  89 PI2 = Pin((__chip_num, 258))
 
  90 PI3 = Pin((__chip_num, 259))
 
  91 PI4 = Pin((__chip_num, 260))
 
  92 PI5 = Pin((__chip_num, 261))
 
  93 PI6 = Pin((__chip_num, 262))
 
  94 PI7 = Pin((__chip_num, 263))
 
  95 PI8 = Pin((__chip_num, 264))
 
  96 PI9 = Pin((__chip_num, 265))
 
  97 PI10 = Pin((__chip_num, 266))
 
  98 PI11 = Pin((__chip_num, 267))
 
  99 PI12 = Pin((__chip_num, 268))
 
 100 PI13 = Pin((__chip_num, 269))
 
 101 PI14 = Pin((__chip_num, 270))
 
 102 PI15 = Pin((__chip_num, 271))
 
 103 PI16 = Pin((__chip_num, 272))
 
 105 i2cPorts = ((3, TWI3_SCL, TWI3_SDA),)
 
 106 # ordered as spiId, sckId, mosiId, misoId
 
 108     (0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
 
 109     (1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
 
 111 # ordered as uartId, txId, rxId
 
 113     (2, UART2_TX, UART2_RX),
 
 114     (5, UART5_TX, UART5_RX),