aboutsummaryrefslogtreecommitdiffstats
path: root/libmaple/stm32f1
diff options
context:
space:
mode:
Diffstat (limited to 'libmaple/stm32f1')
-rw-r--r--libmaple/stm32f1/adc.c2
-rw-r--r--libmaple/stm32f1/include/series/spi.h32
-rw-r--r--libmaple/stm32f1/spi.c15
-rw-r--r--libmaple/stm32f1/usart.c8
4 files changed, 45 insertions, 12 deletions
diff --git a/libmaple/stm32f1/adc.c b/libmaple/stm32f1/adc.c
index facc6bd..ecfbc1c 100644
--- a/libmaple/stm32f1/adc.c
+++ b/libmaple/stm32f1/adc.c
@@ -99,7 +99,7 @@ void adc_foreach(void (*fn)(const adc_dev*)) {
#endif
}
-void adc_gpio_cfg(gpio_dev *gdev, uint8 bit) {
+void adc_config_gpio(const adc_dev *ignored, gpio_dev *gdev, uint8 bit) {
gpio_set_mode(gdev, bit, GPIO_INPUT_ANALOG);
}
diff --git a/libmaple/stm32f1/include/series/spi.h b/libmaple/stm32f1/include/series/spi.h
index 167df0c..8cc4c4d 100644
--- a/libmaple/stm32f1/include/series/spi.h
+++ b/libmaple/stm32f1/include/series/spi.h
@@ -34,6 +34,8 @@
#ifndef _LIBMAPLE_STM32F1_SPI_H_
#define _LIBMAPLE_STM32F1_SPI_H_
+#include <libmaple/libmaple_types.h>
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -63,6 +65,36 @@ extern struct spi_dev *SPI2;
extern struct spi_dev *SPI3;
#endif
+/*
+ * Routines
+ */
+
+/* spi_gpio_cfg(): Backwards compatibility shim to spi_config_gpios() */
+struct gpio_dev;
+extern void spi_config_gpios(struct spi_dev*, uint8,
+ struct gpio_dev*, uint8,
+ struct gpio_dev*, uint8, uint8, uint8);
+/**
+ * @brief Deprecated. Use spi_config_gpios() instead.
+ * @see spi_config_gpios()
+ */
+static __always_inline void spi_gpio_cfg(uint8 as_master,
+ struct gpio_dev *nss_dev,
+ uint8 nss_bit,
+ struct gpio_dev *comm_dev,
+ uint8 sck_bit,
+ uint8 miso_bit,
+ uint8 mosi_bit) {
+ /* We switched style globally to foo_config_gpios() and always
+ * taking a foo_dev* argument (that last bit is the important
+ * part) after this function was written.
+ *
+ * However, spi_config_gpios() just ignores the spi_dev* on F1, so
+ * we can still keep this around for older code. */
+ spi_config_gpios(NULL, as_master, nss_dev, nss_bit,
+ comm_dev, sck_bit, miso_bit, mosi_bit);
+}
+
#ifdef __cplusplus
}
#endif
diff --git a/libmaple/stm32f1/spi.c b/libmaple/stm32f1/spi.c
index 8b6e495..72f2ef4 100644
--- a/libmaple/stm32f1/spi.c
+++ b/libmaple/stm32f1/spi.c
@@ -69,13 +69,14 @@ spi_dev *SPI3 = &spi3;
* Routines
*/
-void spi_gpio_cfg(uint8 as_master,
- gpio_dev *nss_dev,
- uint8 nss_bit,
- gpio_dev *comm_dev,
- uint8 sck_bit,
- uint8 miso_bit,
- uint8 mosi_bit) {
+void spi_config_gpios(spi_dev *ignored,
+ uint8 as_master,
+ gpio_dev *nss_dev,
+ uint8 nss_bit,
+ gpio_dev *comm_dev,
+ uint8 sck_bit,
+ uint8 miso_bit,
+ uint8 mosi_bit) {
if (as_master) {
gpio_set_mode(nss_dev, nss_bit, GPIO_AF_OUTPUT_PP);
gpio_set_mode(comm_dev, sck_bit, GPIO_AF_OUTPUT_PP);
diff --git a/libmaple/stm32f1/usart.c b/libmaple/stm32f1/usart.c
index eed420e..b3b849f 100644
--- a/libmaple/stm32f1/usart.c
+++ b/libmaple/stm32f1/usart.c
@@ -101,10 +101,10 @@ usart_dev *UART5 = &uart5;
* Routines
*/
-void usart_async_gpio_cfg(usart_dev *udev,
- gpio_dev *rx_dev, uint8 rx,
- gpio_dev *tx_dev, uint8 tx,
- unsigned flags) {
+void usart_config_gpios_async(usart_dev *udev,
+ gpio_dev *rx_dev, uint8 rx,
+ gpio_dev *tx_dev, uint8 tx,
+ unsigned flags) {
gpio_set_mode(rx_dev, rx, GPIO_INPUT_FLOATING);
gpio_set_mode(tx_dev, tx, GPIO_AF_OUTPUT_PP);
}