-
Couldn't load subscription status.
- Fork 8.1k
Description
Origin
Raspberry pi pico example code
https://github.com/raspberrypi/pico-examples
Specifically, the PIO I2C implementation
https://github.com/raspberrypi/pico-examples/blob/master/pio/i2c/
Purpose
Raspberry PI Pico has a PIO peripheral that run specialized programs to implement IO interfaces. This particular code implements an I2C controller.
Mode of integration
The PIO code is copied into zephyr with small modifications to fix bugs.
The C code is modified to conform to Zephyr coding guidelines and use zephyr APIs where appropriate.
Maintainership
Pull Request
Description
What is its primary functionality?
I2C implemented on Raspberry PI PIOs.
What problem are you trying to solve?
Allows more than 2 I2C controllers to operate on one RP2040/2350, potentially at different speeds.
Why is this the right component to solve it?
PIOs are the main way for implementing extra / custom IO peripherals on raspberry pi pico.
Security
Does this component include any cryptographic functionality?
No
How does this component handle security vulnerabilities and updates?
This is example code, and historically hasn't been well updated in response to bugs, so I assume they don't have any process in place.
Are there any known vulnerabilities in this component?
No
Dependencies
What other components does this package depend on?
Raspberry PI Pico SDK, but this is already included in Zephyr.
Will the Zephyr project have a direct dependency on the component, or
will it be included via an abstraction layer with this component as a
replaceable implementation?
Some code in the PR uses the SDK directly where no zephyr-specific abstraction layer is available.
Revision
https://github.com/raspberrypi/pico-examples/tree/sdk-1.5.1
License
BSD-3-Clause
Metadata
Metadata
Assignees
Labels
Type
Projects
Status