altos/stmf0: Add ao_spi_put_pins for MS5067 driver
authorKeith Packard <keithp@keithp.com>
Tue, 6 Dec 2022 03:51:02 +0000 (19:51 -0800)
committerKeith Packard <keithp@keithp.com>
Sun, 18 Dec 2022 02:06:30 +0000 (18:06 -0800)
TeleMini needs this on stmf0

Signed-off-by: Keith Packard <keithp@keithp.com>
src/stmf0/ao_arch_funcs.h
src/stmf0/ao_spi_stm.c

index 8a173b57e5be79e928bebb5acf6ffb0bc1fa3d72..1a9f28e30ef0b68d4f7ac69fe846e16dea915bb5 100644 (file)
@@ -95,6 +95,9 @@ ao_spi_get(uint8_t spi_index, uint32_t speed);
 void
 ao_spi_put(uint8_t spi_index);
 
+void
+ao_spi_put_pins(uint8_t spi_index);
+
 void
 ao_spi_send(const void *block, uint16_t len, uint8_t spi_index);
 
index 0ce114cb0aeef99cffbc2297d70685bd5b1120df..ae4417a274f4b3cc1f628bbdfedfbdd047e58f60 100644 (file)
@@ -499,6 +499,16 @@ ao_spi_put(uint8_t spi_index)
        ao_mutex_put(&ao_spi_mutex[id]);
 }
 
+void
+ao_spi_put_pins(uint8_t spi_index)
+{
+       uint8_t         id = AO_SPI_INDEX(spi_index);
+
+       ao_spi_disable_pin_config(ao_spi_pin_config[id]);
+       ao_spi_pin_config[id] = AO_SPI_CONFIG_NONE;
+       ao_spi_put(spi_index);
+}
+
 static void
 ao_spi_channel_init(uint8_t spi_index)
 {