Generic Serial Peripheral Interface (GSPI) Developer Guide#

About This Guide#

This guide introduces the Generic Serial Peripheral Interface (GSPI) driver for SiWx917-based applications. It explains how to configure, use, and optimize the GSPI peripheral for high-speed serial communication between the SiWx917 device and external SPI-compatible peripherals.

You will learn how to:

  • Configure GSPI for your hardware and application requirements

  • Implement reliable and efficient SPI communication using GSPI APIs

  • Debug and optimize throughput using DMA and event-driven transfers

  • Apply best practices for clocking, timing, and power management

Whether you are creating a new design or migrating from a legacy SPI implementation, this guide provides practical steps and examples to help you confidently integrate GSPI into your embedded system.

Audience#

This document is intended for embedded software and firmware developers working on the SiWx917 platform. It provides guidance on configuring, integrating, and optimizing the GSPI driver.

After completing this guide, you will be able to:

  • Understand GSPI architecture and operating modes

  • Initialize, configure, and use GSPI driver APIs

  • Implement DMA-based data transfers for improved performance

  • Manage low-power operation and handle communication errors

Purpose#

The GSPI peripheral provides a dedicated, high-performance Serial Peripheral Interface (SPI) Primary. It enables fast and reliable communication between the SiWx917 and external SPI devices such as sensors, memory modules, and other microcontrollers.

GSPI allows applications to achieve high-speed, full-duplex communication with flexible configuration options. It is designed to minimize CPU overhead through interrupt and DMA support.

Scope#

This guide covers both conceptual and practical aspects of GSPI development on the SiWx917 platform, including:

  • Software implementation of GSPI communication

  • Using the WiSeConnect SDK with Simplicity Studio for development and build workflows

  • Initialization and configuration (clock source, baud rate, frame format, data width, clock polarity/phase [CPOL/CPHA])

  • API usage, low-power operation, and debugging

  • Best practices and examples for real-world integration

Hardware and Software Requirements#

To develop GSPI-based applications, ensure you have the following components:

Hardware#

  • SiWx917 or Si91x family SoC

  • Silicon Labs evaluation board or module
    See supported hardware

  • Serial console for logging and command interface

  • Logic analyzer or oscilloscope for signal validation

Software#

These tools provide the foundation for developing, building, and testing GSPI-enabled applications.

Note:

  • Always verify your SDK and Firmware versions match the GSPI API definitions described in this guide.

  • This guide adopts Primary/Secondary terminology in place of the legacy Master/Slave SPI terminology. However, where required for register names, signal identifiers (such as MOSI and MISO), or backward compatibility, the terms Master or Slave may still appear in technical references.