circuitpython/ports
Mike Teachman b6dbbbe82f rp2/machine_i2s: Add I2S protocol support.
This commit adds I2S protocol support for the rp2 port:
- I2S API is consistent with STM32 and ESP32 ports
- I2S configurations supported:
  - master transmit and master receive
  - 16-bit and 32-bit sample sizes
  - mono and stereo formats
  - sampling frequency
  - 3 modes of operation:
    - blocking
    - non-blocking with callback
    - uasyncio
  - internal ring buffer size can be tuned
- DMA IRQs are managed on an I2S object basis, allowing other
  RP2 entities to use DMA IRQs when I2S is not being used
- MicroPython documentation
- tested on Raspberry Pi Pico development board
- build metric changes for this commit: text(+4552), data(0), bss(+8)

Signed-off-by: Mike Teachman <mike.teachman@gmail.com>
2021-11-13 12:27:42 +11:00
..
bare-arm bare-arm/mpconfigport.h: Disable remaining optional features. 2021-11-01 14:23:06 +11:00
cc3200 ports: Add images, features and urls to board.json. 2021-10-28 15:25:38 +11:00
esp32 stm32,esp32: In machine_i2s, make object reference arrays root pointers. 2021-11-13 12:22:42 +11:00
esp8266 esp8266/boards/GENERIC: Enable f-strings. 2021-11-05 14:05:54 +11:00
javascript javascript/Makefile: Change variable to EXPORTED_RUNTIME_METHODS. 2021-09-01 00:42:40 +10:00
mimxrt ports: Add images, features and urls to board.json. 2021-10-28 15:25:38 +11:00
minimal minimal/mpconfigport.h: Disable features that are not needed. 2021-11-05 13:12:18 +11:00
nrf ports: Add images, features and urls to board.json. 2021-10-28 15:25:38 +11:00
pic16bit all: Update to point to files in new shared/ directory. 2021-07-12 17:08:10 +10:00
powerpc all: Update to point to files in new shared/ directory. 2021-07-12 17:08:10 +10:00
qemu-arm all: Update to point to files in new shared/ directory. 2021-07-12 17:08:10 +10:00
rp2 rp2/machine_i2s: Add I2S protocol support. 2021-11-13 12:27:42 +11:00
samd ports: Add images, features and urls to board.json. 2021-10-28 15:25:38 +11:00
stm32 stm32,esp32: In machine_i2s, make object reference arrays root pointers. 2021-11-13 12:22:42 +11:00
teensy all: Update to point to files in new shared/ directory. 2021-07-12 17:08:10 +10:00
unix unix/modusocket: Support MP_STREAM_POLL in unix socket_ioctl. 2021-10-19 22:48:10 +11:00
windows all: Remove MICROPY_OPT_CACHE_MAP_LOOKUP_IN_BYTECODE. 2021-09-16 16:04:03 +10:00
zephyr extmod/modbluetooth: Add connection interval to gap_connect. 2021-10-26 00:16:53 +11:00