libjoybus
Joybus implementation for 32-bit MCUs
Loading...
Searching...
No Matches
RP2xxx Backend

Raspberry Pi RP2040/RP2350 Joybus backend. More...

Data Structures

struct  joybus_rp2xxx_data
struct  joybus_rp2xxx
 A RP2xxx Joybus instance. More...
struct  joybus_rp2xxx_config
 Configuration for a RP2xxx Joybus instance. More...

Macros

#define JOYBUS_RP2XXX(bus)
 Macro to cast a generic Joybus instance to a RP2xxx Joybus instance.

Functions

static struct joybus_rp2xxx_config joybus_rp2xxx_config_default (uint8_t gpio)
 Build a RP2xxx config with default values.
int joybus_rp2xxx_init (struct joybus_rp2xxx *rp2xxx_bus, struct joybus_rp2xxx_config config)
 Initialize a RP2xxx Joybus instance.

Detailed Description

Raspberry Pi RP2040/RP2350 Joybus backend.

Macro Definition Documentation

◆ JOYBUS_RP2XXX

#define JOYBUS_RP2XXX ( bus)
Value:
((struct joybus_rp2xxx *)(bus))
A RP2xxx Joybus instance.
Definition rp2xxx.h:57

Macro to cast a generic Joybus instance to a RP2xxx Joybus instance.

Function Documentation

◆ joybus_rp2xxx_config_default()

struct joybus_rp2xxx_config joybus_rp2xxx_config_default ( uint8_t gpio)
inlinestatic

Build a RP2xxx config with default values.

Parameters
gpiothe GPIO pin to use for the Joybus data line
Returns
a config with the given GPIO, the pio0 instance, and a nominal frequency

◆ joybus_rp2xxx_init()

int joybus_rp2xxx_init ( struct joybus_rp2xxx * rp2xxx_bus,
struct joybus_rp2xxx_config config )

Initialize a RP2xxx Joybus instance.

Parameters
rp2xxx_busthe RP2xxx Joybus instance to initialize
configthe configuration to use, eg. from joybus_rp2xxx_config_default()
Returns
0 on success, a negative joybus_error on failure