Просмотр исходного кода

driver(spi): fix flag check in bus initialization

The current flag check in the SPI bus initialization is wrong and
causes exceptions when using certain SPI hosts in quad transfert mode.
Yannis Huber 3 лет назад
Родитель
Сommit
3397cf465d
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      components/driver/spi_common.c

+ 1 - 1
components/driver/spi_common.c

@@ -654,7 +654,7 @@ esp_err_t spicommon_bus_initialize_io(spi_host_device_t host, const spi_bus_conf
             gpio_hal_iomux_func_sel(GPIO_PIN_MUX_REG[bus_config->sclk_io_num], FUNC_GPIO);
         }
 #if SOC_SPI_SUPPORT_OCT
-        if (flags & SPICOMMON_BUSFLAG_OCTAL) {
+        if ((flags & SPICOMMON_BUSFLAG_OCTAL) == SPICOMMON_BUSFLAG_OCTAL) {
             int io_nums[] = {bus_config->data4_io_num, bus_config->data5_io_num, bus_config->data6_io_num, bus_config->data7_io_num};
             uint8_t io_signals[4][2] = {{spi_periph_signal[host].spid4_out, spi_periph_signal[host].spid4_in},
                                         {spi_periph_signal[host].spid5_out, spi_periph_signal[host].spid5_in},