"""Pin definitions for Jetson TX1."""
-from adafruit_blinka.microcontroller.tegra.t210 import x1_pin as pin
+from adafruit_blinka.microcontroller.tegra.t210 import pin
SDA = pin.SDA
SCL = pin.SCL
"""Pin definitions for Jetson TXX."""
-from adafruit_blinka.microcontroller.tegra.t210 import xx_pin as pin
+from adafruit_blinka.microcontroller.tegra.t210 import pin
-SDA = pin.SDA
-SCL = pin.SCL
-SDA_1 = pin.SDA_1
-SCL_1 = pin.SCL_1
+SDA = pin.SDA_1
+SCL = pin.SCL_1
+SDA_1 = pin.SDA
+SCL_1 = pin.SCL
D4 = pin.BB00
D5 = pin.S05
SDA_1 = Pin('GEN2_I2C_SDA')
SCL_1 = Pin('GEN2_I2C_SCL')
-BB00 = Pin('AUD_MCLK')
+# These pins are native to TX1
BB03 = Pin('GPIO_X1_AUD')
X02 = Pin('MOTION_INT')
-C04 = Pin('SPI1_CS1')
-C03 = Pin('SPI1_CS0')
-C01 = Pin('SPI1_MISO')
-C00 = Pin('SPI1_MOSI')
-C02 = Pin('SPI1_SCK')
H07 = Pin('AP_WAKE_NFC')
E04 = Pin('DMIC3_CLK')
U03 = Pin('UART1_CTS')
X00 = Pin('MODEM_WAKE_AP')
P16 = Pin('GPIO_EXP_P16')
X03 = Pin('ALS_PROX_INT')
+
+# These pins are native to TXX
+S05 = Pin('CAM_AF_EN')
+Z00 = Pin('GPIO_PZ0')
+V00 = Pin('LCD_BL_PW')
+G03 = Pin('UART2_CTS')
+G02 = Pin('UART2_RTS')
+J07 = Pin('DAP4_SCLK')
+J04 = Pin('DAP4_FS')
+J05 = Pin('DAP4_DIN')
+J06 = Pin('DAP4_DOUT')
+Y02 = Pin('LCD_TE')
+DD00 = Pin('SPI2_CS1')
+B07 = Pin('SPI2_CS0')
+B05 = Pin('SPI2_MISO')
+B04 = Pin('SPI2_MOSI')
+B06 = Pin('SPI2_SCK')
+
+# These pins are shared across T210
+BB00 = Pin('AUD_MCLK')
+C04 = Pin('SPI1_CS1')
+C03 = Pin('SPI1_CS0')
+C01 = Pin('SPI1_MISO')
+C00 = Pin('SPI1_MOSI')
+C02 = Pin('SPI1_SCK')
E06 = Pin('GPIO_PE6')
i2cPorts = (
+++ /dev/null
-import sys
-import atexit
-sys.path.append("/opt/nvidia/jetson-gpio/lib/python")
-sys.path.append("/opt/nvidia/jetson-gpio/lib/python/Jetson/GPIO")
-import Jetson.GPIO as GPIO
-GPIO.setmode(GPIO.TEGRA_SOC)
-GPIO.setwarnings(False) # shh!
-
-# Pins dont exist in CPython so...lets make our own!
-class Pin:
- IN = 0
- OUT = 1
- LOW = 0
- HIGH = 1
- PULL_NONE = 0
- PULL_UP = 1
- PULL_DOWN = 2
-
- id = None
- _value = LOW
- _mode = IN
-
- def __init__(self, bcm_number):
- self.id = bcm_number
-
- def __repr__(self):
- return str(self.id)
-
- def __eq__(self, other):
- return self.id == other
-
- def init(self, mode=IN, pull=None):
- if mode != None:
- if mode == self.IN:
- self._mode = self.IN
- GPIO.setup(self.id, GPIO.IN)
- elif mode == self.OUT:
- self._mode = self.OUT
- GPIO.setup(self.id, GPIO.OUT)
- else:
- raise RuntimeError("Invalid mode for pin: %s" % self.id)
- if pull != None:
- if self._mode != self.IN:
- raise RuntimeError("Cannot set pull resistor on output")
- if pull == self.PULL_UP:
- GPIO.setup(self.id, GPIO.IN, pull_up_down=GPIO.PUD_UP)
- elif pull == self.PULL_DOWN:
- GPIO.setup(self.id, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
- else:
- raise RuntimeError("Invalid pull for pin: %s" % self.id)
-
- def value(self, val=None):
- if val != None:
- if val == self.LOW:
- self._value = val
- GPIO.output(self.id, val)
- elif val == self.HIGH:
- self._value = val
- GPIO.output(self.id, val)
- else:
- raise RuntimeError("Invalid value for pin")
- else:
- return GPIO.input(self.id)
-
- @atexit.register
- def cleanup():
- print("Exiting... \nCleaning up pins")
- GPIO.cleanup()
-
-# Cannot be used as GPIO
-SDA = Pin('GEN2_I2C_SDA')
-SCL = Pin('GEN2_I2C_SCL')
-SDA_1 = Pin('GEN1_I2C_SDA')
-SCL_1 = Pin('GEN1_I2C_SCL')
-
-BB00 = Pin('AUD_MCLK')
-S05 = Pin('CAM_AF_EN')
-Z00 = Pin('GPIO_PZ0')
-C04 = Pin('SPI1_CS1')
-C03 = Pin('SPI1_CS0')
-C01 = Pin('SPI1_MISO')
-C00 = Pin('SPI1_MOSI')
-C02 = Pin('SPI1_SCK')
-V00 = Pin('LCD_BL_PW')
-E06 = Pin('GPIO_PE6')
-G03 = Pin('UART2_CTS')
-G02 = Pin('UART2_RTS')
-J07 = Pin('DAP4_SCLK')
-J04 = Pin('DAP4_FS')
-J05 = Pin('DAP4_DIN')
-J06 = Pin('DAP4_DOUT')
-Y02 = Pin('LCD_TE')
-DD00 = Pin('SPI2_CS1')
-B07 = Pin('SPI2_CS0')
-B05 = Pin('SPI2_MISO')
-B04 = Pin('SPI2_MOSI')
-B06 = Pin('SPI2_SCK')
-
-i2cPorts = (
- (1, SCL, SDA), (0, SCL_1, SDA_1),
-)
elif detector.chip.SAMA5:
from adafruit_blinka.microcontroller.sama5.pin import Pin
elif detector.chip.T210:
- if detector.board.JETSON_TX1:
- from adafruit_blinka.microcontroller.tegra.t210.x1_pin import Pin
- elif detector.board.JETSON_TXX:
- from adafruit_blinka.microcontroller.tegra.t210.xx_pin import Pin
+ from adafruit_blinka.microcontroller.tegra.t210.pin import Pin
elif detector.chip.T186:
from adafruit_blinka.microcontroller.tegra.t186.pin import Pin
elif detector.chip.T194:
"""Pins named after their chip name."""
-from adafruit_platformdetect import chip as ap_chip, board as ap_board
-from adafruit_blinka.agnostic import chip_id, board_id
+import adafruit_platformdetect.chip as ap_chip
+from adafruit_blinka.agnostic import chip_id
# We intentionally are patching into this namespace so skip the wildcard check.
# pylint: disable=unused-wildcard-import,wildcard-import,ungrouped-imports
elif chip_id == ap_chip.SAMA5:
from adafruit_blinka.microcontroller.sama5.pin import *
elif chip_id == ap_chip.T210:
- if board_id == ap_board.JETSON_TX1:
- from adafruit_blinka.microcontroller.tegra.t210.x1_pin import *
- elif board_id == ap_board.JETSON_TXX:
- from adafruit_blinka.microcontroller.tegra.t210.xx_pin import *
+ from adafruit_blinka.microcontroller.tegra.t210.pin import *
elif chip_id == ap_chip.T186:
from adafruit_blinka.microcontroller.tegra.t186.pin import *
elif chip_id == ap_chip.T194: