From a075e0b7d87a66a4b2ee9f75bcf70887157c7ae2 Mon Sep 17 00:00:00 2001 From: robert-hh Date: Fri, 19 Feb 2021 17:11:04 +0100 Subject: [PATCH] rp2/rp2_pio: Allow more than 8 consecutive pins for PIO out/set/sideset. The bitmasks supplied for initialization of out/set/sideset were only 8 bit instead of 32. This resulted in an error, that not more than 8 consecutive pins would get initialized. Fixes issue #6933. --- ports/rp2/rp2_pio.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/rp2/rp2_pio.c b/ports/rp2/rp2_pio.c index 7d8921d0c3a5..6101164a1572 100644 --- a/ports/rp2/rp2_pio.c +++ b/ports/rp2/rp2_pio.c @@ -139,8 +139,8 @@ enum { typedef struct _asm_pio_config_t { int8_t base; uint8_t count; - uint8_t pindirs; - uint8_t pinvals; + uint32_t pindirs; + uint32_t pinvals; } asm_pio_config_t; STATIC void asm_pio_override_shiftctrl(mp_obj_t arg, uint32_t bits, uint32_t lsb, pio_sm_config *config) {