--- /dev/null
+"""Pin definitions for the Hifive Unleashed."""
+
+from adafruit_blinka.microcontroller.hfu540 import pin
+
+GPIO_A = pin.GPIO0
+GPIO_B = pin.GPIO1
+GPIO_C = pin.GPIO2
+GPIO_D = pin.GPIO3
+GPIO_E = pin.GPIO4
+GPIO_F = pin.GPIO5
+GPIO_G = pin.GPIO6
+GPIO_H = pin.GPIO7
+GPIO_I = pin.GPIO8
+GPIO_J = pin.GPIO9
+GPIO_K = pin.GPIO15
+
+UART0_TXD = pin.UART0_TXD
+UART0_RXD = pin.UART0_RXD
+SPI0_SCLK = pin.SPI0_SCLK
+SPI0_DIN = pin.SPI0_DIN
+UART1_TXD = pin.UART1_TXD
+SPI0_CS = pin.SPI0_CS
+UART1_RXD = pin.UART1_RXD
+SPIO0_DOUT = pin.SPIO0_DOUT
+I2C0_SCL = pin.I2C0_SCL
+I2C0_SDA = pin.I2C0_SDA
+
+SDA = pin.I2C0_SDA
+SCL = pin.I2C0_SCL
+
+I2C0_SDA = pin.I2C0_SDA
+I2C0_SCL = pin.I2C0_SCL
+
+SCLK = pin.SPI0_SCLK
+MOSI = pin.SPI0_DOUT
+MISO = pin.SPI0_DIN
+SPI_CS = pin.SPI0_CS
+
--- /dev/null
+"""Hifive Unleashed pin names"""
+
+from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
+
+UART0_TXD = Pin(5)
+UART0_RXD = Pin(7)
+SPI0_SCLK = Pin(8)
+SPI0_DIN = Pin(10)
+UART1_TXD = Pin(11)
+SPI0_CS = Pin(12)
+UART1_RXD = Pin(13)
+SPIO0_DOUT = Pin(14)
+I2C0_SCL = Pin(15)
+I2C0_SDA = Pin(17)
+GPIO0 = Pin(23)
+GPIO1 = Pin(24)
+GPIO2 = Pin(25)
+GPIO3 = Pin(26)
+GPIO4 = Pin(27)
+GPIO5 = Pin(28)
+GPIO6 = Pin(29)
+GPIO7 = Pin(30)
+GPIO8 = Pin(31)
+GPIO9 = Pin(32)
+GPIO15 = Pin(33)
+
+# ordered as spiId, sckId, mosiId, misoId
+SPI_PORTS = ((1, SPI0_SCLK, SPI0_DOUT, SPI0_DIN))
+
+# ordered as uartId, txId, rxId
+UART_PORTS = (
+ (0, UART0_TXD, UART0_RXD),
+ # (0, GPIO15, GPIO13)
+ (1, UART1_TXD, UART1_RXD))
+
+# ordered as spiId, spiSCA, spiSCL
+I2C_PORTS = (
+ (0, I2C0_SCA, I2C0_SCL))
elif board_id == ap_board.MICROCHIP_MCP2221:
from adafruit_blinka.board.microchip_mcp2221 import *
+elif board_id == ap_board.SIFIVE_UNLEASHED:
+ from adafruit_blinka.board.hifive_unleashed import *
+
elif board_id == ap_board.PINE64:
from adafruit_blinka.board.pine64 import *
elif board_id == ap_board.JETSON_XAVIER:
from adafruit_blinka.microcontroller.generic_linux.spi import SPI as _SPI
from adafruit_blinka.microcontroller.tegra.t194.pin import Pin
+ elif detector.board.SIFIVE_UNLEASHED:
+ from adafruit_blinka.microcontroller.generic_linux.spi import SPI as _SPI
+ from adafruit_blinka.microcontroller.hfu540.pin import Pin
elif detector.board.ftdi_ft232h:
from adafruit_blinka.microcontroller.ft232h.spi import SPI as _SPI
from adafruit_blinka.microcontroller.ft232h.pin import Pin
from adafruit_blinka.microcontroller.snapdragon.apq8016.pin import Pin
elif detector.chip.IMX8MX:
from adafruit_blinka.microcontroller.nxp_imx8m.pin import Pin
+elif detector.chip.HFU540:
+ from adafruit_blinka.microcontroller.hfu540.pin import Pin
elif detector.chip.A64:
from adafruit_blinka.microcontroller.allwinner.a64.pin import Pin
elif detector.board.ftdi_ft232h:
from adafruit_blinka.microcontroller.allwinner.a64.pin import *
elif chip_id == ap_chip.IMX8MX:
from adafruit_blinka.microcontroller.nxp_imx8m import *
+elif chip_id == ap_chip.HFU540:
+ from adafruit_blinka.microcontroller.hfu540.pin import *
elif chip_id == ap_chip.BINHO:
from adafruit_blinka.microcontroller.nova import *
elif chip_id == ap_chip.MIPS24KC:
from adafruit_blinka.microcontroller.snapdragon.apq8016.pin import *
elif chip_id == ap_chip.IMX8MX:
from adafruit_blinka.microcontroller.nxp_imx8m.pin import *
+elif chip_id == ap_chip.HFU540:
+ from adafruit_blinka.microcontroller.hfu540.pin import *
elif chip_id == ap_chip.FT232H:
from adafruit_blinka.microcontroller.ft232h.pin import *
elif chip_id == ap_chip.BINHO: