Legend

Overview

The Legend board family contains three revisions: 25hdd, 25ssd, and 35.

The Legend 2.5” HDD board (revision 25hdd) can be found in the Seagate FireCuda Gaming Hard Drive, Gaming Drive for Xbox and Gaming Drive for PlayStation devices. A 2.5” drive and two chips are embedded: an ASMedia ASM1153 USB-to-SATA bridge controller and a STM32F070 MCU. The former is handling the USB to HDD I/Os while the latter is dedicated to the LED effects. The two chips are connected together through I2C.

The Legend 2.5” SSD board (revision 25ssd) is found in the Seagate SSD Gaming Drive for Xbox. A Realtek RTS5411S USB hub is embedded and connected to a Phison U17 2.5” SSD, as well as a STM32F070 MCU.

The Legend 3.5” board (revision 35) can be found in the Seagate FireCuda Gaming Hub and Gaming Drive Hub for Xbox devices. A Genesys Logic GL3523-S USB hub is connected to an ASMedia ASM1153 USB-to-SATA bridge controller and a STM32F070 MCU. The two chips are connected together using I2C.

On all boards, the Zephyr port is running on the STM32F070 MCU.

Seagate FireCuda Gaming Hard Drive Seagate FireCuda Gaming Hub

Hardware

  • STM32F070cb MCU:

    • ARM Cortex-M0+

    • 16KB SRAM

    • 128KB on-chip flash

  • External devices connected to the STM32F070cb MCU:

    • ASMedia ASM1153 USB-to-SATA bridge (I2C master on port 1) (HDD only)

    • 6 (hdd) or 4 (ssd) Everlight B1414 LEDs connected on SPI1 MOSI

    • 1 white LED (HDD only)

    • 64KB external SPI flash connected on SPI2

Supported Features

The legend board supports the hardware features listed below.

on-chip / on-board
Feature integrated in the SoC / present on the board.
2 / 2
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files.
vnd,foo
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.

legend/stm32f070xb@25hdd target

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M0 CPU1

arm,cortex-m0

ADC

on-chip

STM32 ADC1

st,stm32-adc

Clock control

on-chip

STM32F0/G0 RCC (Reset and Clock controller)1

st,stm32f0-rcc

on-chip

STM32 HSE Clock1

st,stm32-hse-clock

on-chip

Generic fixed-rate clock provider1 2

fixed-clock

on-chip

STM32 LSE Clock1

st,stm32-lse-clock

on-chip

STM32F0/F3 Main PLL1

st,stm32f0-pll-clock

Counter

on-chip

STM32 counters4

st,stm32-counter

DMA

on-chip

STM32 DMA controller (V2bis) for the stm32F0, stm32F1 and stm32L1 soc families1

st,stm32-dma-v2bis

Flash controller

on-chip

STM32 Family flash controller1

st,stm32-flash-controller

GPIO & Headers

on-chip

STM32 GPIO Controller3 2

st,stm32-gpio

I2C

on-chip

STM32 I2C V2 controller1 1

st,stm32-i2c-v2

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv6-M NVIC (Nested Vectored Interrupt Controller) controller1

arm,v6m-nvic

on-chip

STM32 External Interrupt Controller1

st,stm32-exti

LED

on-board

Group of PWM-controlled LEDs1

pwm-leds

LED strip

on-board

Worldsemi WS2812 LED strip, SPI binding1

worldsemi,ws2812-spi

MTD

on-chip

STM32 flash memory1

st,stm32-nv-flash

on-board

Properties supporting Zephyr spi-nor flash driver (over the Zephyr SPI API) control of serial flash memories using the standard M25P80-based command set1

jedec,spi-nor

on-board

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

PHY

on-chip

This binding is to be used by all the usb transceivers which are built-in with USB IP1

usb-nop-xceiv

Pin control

on-chip

STM32 Pin controller1

st,stm32-pinctrl

PWM

on-chip

STM32 PWM1 5

st,stm32-pwm

Reset controller

on-chip

STM32 Reset and Clock Control (RCC) Controller1

st,stm32-rcc-rctl

RTC

on-chip

STM32 RTC1

st,stm32-rtc

Sensors

on-chip

STM32 VREF+1

st,stm32-vref

on-chip

STM32 TEMP for production calibrated sensors with a single calibration temperature1

st,stm32c0-temp-cal

Serial controller

on-chip

STM32 USART1 3

st,stm32-usart

SMbus

on-chip

STM32 SMBus controller2

st,stm32-smbus

SPI

on-chip

STM32 SPI controller with embedded Rx and Tx FIFOs2

st,stm32-spi-fifo

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv6-M System Tick1

arm,armv6m-systick

on-chip

STM32 timers1 7

st,stm32-timers

USB

on-chip

STM32 USB controller1

st,stm32-usb

Watchdog

on-chip

STM32 watchdog1

st,stm32-watchdog

on-chip

STM32 system window watchdog1

st,stm32-window-watchdog

legend/stm32f070xb@25ssd target

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M0 CPU1

arm,cortex-m0

ADC

on-chip

STM32 ADC1

st,stm32-adc

Clock control

on-chip

STM32F0/G0 RCC (Reset and Clock controller)1

st,stm32f0-rcc

on-chip

STM32 HSE Clock1

st,stm32-hse-clock

on-chip

Generic fixed-rate clock provider3

fixed-clock

on-chip

STM32 LSE Clock1

st,stm32-lse-clock

on-chip

STM32F0/F3 Main PLL1

st,stm32f0-pll-clock

Counter

on-chip

STM32 counters4

st,stm32-counter

DMA

on-chip

STM32 DMA controller (V2bis) for the stm32F0, stm32F1 and stm32L1 soc families1

st,stm32-dma-v2bis

Flash controller

on-chip

STM32 Family flash controller1

st,stm32-flash-controller

GPIO & Headers

on-chip

STM32 GPIO Controller3 2

st,stm32-gpio

I2C

on-chip

STM32 I2C V2 controller1 1

st,stm32-i2c-v2

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv6-M NVIC (Nested Vectored Interrupt Controller) controller1

arm,v6m-nvic

on-chip

STM32 External Interrupt Controller1

st,stm32-exti

LED strip

on-board

Worldsemi WS2812 LED strip, SPI binding1

worldsemi,ws2812-spi

MTD

on-chip

STM32 flash memory1

st,stm32-nv-flash

on-board

Properties supporting Zephyr spi-nor flash driver (over the Zephyr SPI API) control of serial flash memories using the standard M25P80-based command set1

jedec,spi-nor

on-board

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

PHY

on-chip

This binding is to be used by all the usb transceivers which are built-in with USB IP1

usb-nop-xceiv

Pin control

on-chip

STM32 Pin controller1

st,stm32-pinctrl

PWM

on-chip

STM32 PWM6

st,stm32-pwm

Reset controller

on-chip

STM32 Reset and Clock Control (RCC) Controller1

st,stm32-rcc-rctl

RTC

on-chip

STM32 RTC1

st,stm32-rtc

Sensors

on-chip

STM32 VREF+1

st,stm32-vref

on-chip

STM32 TEMP for production calibrated sensors with a single calibration temperature1

st,stm32c0-temp-cal

Serial controller

on-chip

STM32 USART1 3

st,stm32-usart

SMbus

on-chip

STM32 SMBus controller2

st,stm32-smbus

SPI

on-chip

STM32 SPI controller with embedded Rx and Tx FIFOs2

st,stm32-spi-fifo

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv6-M System Tick1

arm,armv6m-systick

on-chip

STM32 timers8

st,stm32-timers

USB

on-chip

STM32 USB controller1

st,stm32-usb

Watchdog

on-chip

STM32 watchdog1

st,stm32-watchdog

on-chip

STM32 system window watchdog1

st,stm32-window-watchdog

legend/stm32f070xb@35 target

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M0 CPU1

arm,cortex-m0

ADC

on-chip

STM32 ADC1

st,stm32-adc

Clock control

on-chip

STM32F0/G0 RCC (Reset and Clock controller)1

st,stm32f0-rcc

on-chip

STM32 HSE Clock1

st,stm32-hse-clock

on-chip

Generic fixed-rate clock provider3

fixed-clock

on-chip

STM32 LSE Clock1

st,stm32-lse-clock

on-chip

STM32F0/F3 Main PLL1

st,stm32f0-pll-clock

Counter

on-chip

STM32 counters4

st,stm32-counter

DMA

on-chip

STM32 DMA controller (V2bis) for the stm32F0, stm32F1 and stm32L1 soc families1

st,stm32-dma-v2bis

Flash controller

on-chip

STM32 Family flash controller1

st,stm32-flash-controller

GPIO & Headers

on-chip

STM32 GPIO Controller3 2

st,stm32-gpio

I2C

on-chip

STM32 I2C V2 controller1 1

st,stm32-i2c-v2

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv6-M NVIC (Nested Vectored Interrupt Controller) controller1

arm,v6m-nvic

on-chip

STM32 External Interrupt Controller1

st,stm32-exti

LED

on-board

Group of PWM-controlled LEDs1

pwm-leds

LED strip

on-board

Worldsemi WS2812 LED strip, SPI binding1

worldsemi,ws2812-spi

MTD

on-chip

STM32 flash memory1

st,stm32-nv-flash

on-board

Properties supporting Zephyr spi-nor flash driver (over the Zephyr SPI API) control of serial flash memories using the standard M25P80-based command set1

jedec,spi-nor

on-board

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

PHY

on-chip

This binding is to be used by all the usb transceivers which are built-in with USB IP1

usb-nop-xceiv

Pin control

on-chip

STM32 Pin controller1

st,stm32-pinctrl

PWM

on-chip

STM32 PWM1 5

st,stm32-pwm

Reset controller

on-chip

STM32 Reset and Clock Control (RCC) Controller1

st,stm32-rcc-rctl

RTC

on-chip

STM32 RTC1

st,stm32-rtc

Sensors

on-chip

STM32 VREF+1

st,stm32-vref

on-chip

STM32 TEMP for production calibrated sensors with a single calibration temperature1

st,stm32c0-temp-cal

Serial controller

on-chip

STM32 USART1 3

st,stm32-usart

SMbus

on-chip

STM32 SMBus controller2

st,stm32-smbus

SPI

on-chip

STM32 SPI controller with embedded Rx and Tx FIFOs2

st,stm32-spi-fifo

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv6-M System Tick1

arm,armv6m-systick

on-chip

STM32 timers1 7

st,stm32-timers

USB

on-chip

STM32 USB controller1

st,stm32-usb

Watchdog

on-chip

STM32 watchdog1

st,stm32-watchdog

on-chip

STM32 system window watchdog1

st,stm32-window-watchdog

Connections and IOs

Name

Function

Usage

PB6

I2C1

I2C1 SCL (HDD only)

PB7

I2C1

I2C1 SDA (HDD only)

PA10

UART

USART0 RX

PA9

UART

USART0 TX

PB0

PWM

Activity LED (HDD only)

PB12

SPI2

SPI2 Enable

PB13

SPI2

SPI2 Clock

PB14

SPI2

SPI2 MISO

PB15

SPI2

SPI2 MOSI

PA7

LED strip

SPI1 MOSI

PA12

USB

USB DM (25ssd and 35 only)

PA13

USB

USB DP (25ssd and 35 only)

Programming and Debugging

Flashing

The STM32F070cb MCU can be flashed by connecting an external debug probe to the SWD port (on-board 4-pin header). In the default OpenOCD configuration, the ST Link interface is selected. You may need to replace it with the interface of your debug probe.

Once the debug probe is connected to both the Legend board and your host computer, then you can simply run the west flash command to write a firmware image into flash.

Debugging

Please refer to the Flashing section and run the west debug command instead of west flash.

References