altos/stm: Set SPI clock high for disabled SPI busses
authorKeith Packard <keithp@keithp.com>
Sun, 7 Oct 2012 02:39:15 +0000 (19:39 -0700)
committerKeith Packard <keithp@keithp.com>
Sun, 7 Oct 2012 02:39:15 +0000 (19:39 -0700)
This should avoid an accidental low->high transition when switching
between multiple SPI busses.

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

index 5b823e3e63648a136da3145cb7628b4c0538cba8..599d7ee09981694ac4dabea3e695028ec30718be 100644 (file)
@@ -276,19 +276,19 @@ ao_spi_disable_index(uint8_t spi_index)
        case STM_SPI_INDEX(1):
                switch (spi_index) {
                case AO_SPI_1_PA5_PA6_PA7:
        case STM_SPI_INDEX(1):
                switch (spi_index) {
                case AO_SPI_1_PA5_PA6_PA7:
-                       stm_gpio_set(&stm_gpioa, 5, 0);
+                       stm_gpio_set(&stm_gpioa, 5, 1);
                        stm_moder_set(&stm_gpioa, 5, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpioa, 6, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpioa, 7, STM_MODER_OUTPUT);
                        break;
                case AO_SPI_1_PB3_PB4_PB5:
                        stm_moder_set(&stm_gpioa, 5, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpioa, 6, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpioa, 7, STM_MODER_OUTPUT);
                        break;
                case AO_SPI_1_PB3_PB4_PB5:
-                       stm_gpio_set(&stm_gpiob, 3, 0);
+                       stm_gpio_set(&stm_gpiob, 3, 1);
                        stm_moder_set(&stm_gpiob, 3, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpiob, 4, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpiob, 5, STM_MODER_OUTPUT);
                        break;
                case AO_SPI_1_PE13_PE14_PE15:
                        stm_moder_set(&stm_gpiob, 3, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpiob, 4, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpiob, 5, STM_MODER_OUTPUT);
                        break;
                case AO_SPI_1_PE13_PE14_PE15:
-                       stm_gpio_set(&stm_gpioe, 13, 0);
+                       stm_gpio_set(&stm_gpioe, 13, 1);
                        stm_moder_set(&stm_gpioe, 13, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpioe, 14, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpioe, 15, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpioe, 13, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpioe, 14, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpioe, 15, STM_MODER_OUTPUT);
@@ -298,13 +298,13 @@ ao_spi_disable_index(uint8_t spi_index)
        case STM_SPI_INDEX(2):
                switch (spi_index) {
                case AO_SPI_2_PB13_PB14_PB15:
        case STM_SPI_INDEX(2):
                switch (spi_index) {
                case AO_SPI_2_PB13_PB14_PB15:
-                       stm_gpio_set(&stm_gpiob, 13, 0);
+                       stm_gpio_set(&stm_gpiob, 13, 1);
                        stm_moder_set(&stm_gpiob, 13, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpiob, 14, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpiob, 15, STM_MODER_OUTPUT);
                        break;
                case AO_SPI_2_PD1_PD3_PD4:
                        stm_moder_set(&stm_gpiob, 13, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpiob, 14, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpiob, 15, STM_MODER_OUTPUT);
                        break;
                case AO_SPI_2_PD1_PD3_PD4:
-                       stm_gpio_set(&stm_gpiod, 1, 0);
+                       stm_gpio_set(&stm_gpiod, 1, 1);
                        stm_moder_set(&stm_gpiod, 1, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpiod, 3, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpiod, 4, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpiod, 1, STM_MODER_OUTPUT);
                        stm_moder_set(&stm_gpiod, 3, STM_MODER_INPUT);
                        stm_moder_set(&stm_gpiod, 4, STM_MODER_OUTPUT);