@@ -255,38 +255,38 @@ esp_err_t spicommon_bus_initialize_io(spi_host_device_t host, const spi_bus_conf
255255 if (native ) {
256256 //All SPI native pin selections resolve to 1, so we put that here instead of trying to figure
257257 //out which FUNC_GPIOx_xSPIxx to grab; they all are defined to 1 anyway.
258- if (bus_config -> mosi_io_num > 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> mosi_io_num ], 1 );
259- if (bus_config -> miso_io_num > 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> miso_io_num ], 1 );
260- if (use_quad && bus_config -> quadwp_io_num > 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> quadwp_io_num ], 1 );
261- if (use_quad && bus_config -> quadhd_io_num > 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> quadhd_io_num ], 1 );
262- if (bus_config -> sclk_io_num > 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> sclk_io_num ], 1 );
258+ if (bus_config -> mosi_io_num >= 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> mosi_io_num ], 1 );
259+ if (bus_config -> miso_io_num >= 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> miso_io_num ], 1 );
260+ if (use_quad && bus_config -> quadwp_io_num >= 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> quadwp_io_num ], 1 );
261+ if (use_quad && bus_config -> quadhd_io_num >= 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> quadhd_io_num ], 1 );
262+ if (bus_config -> sclk_io_num >= 0 ) PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> sclk_io_num ], 1 );
263263 } else {
264264 //Use GPIO
265- if (bus_config -> mosi_io_num > 0 ) {
265+ if (bus_config -> mosi_io_num >= 0 ) {
266266 PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> mosi_io_num ], PIN_FUNC_GPIO );
267267 gpio_set_direction (bus_config -> mosi_io_num , GPIO_MODE_INPUT_OUTPUT );
268268 gpio_matrix_out (bus_config -> mosi_io_num , io_signal [host ].spid_out , false, false);
269269 gpio_matrix_in (bus_config -> mosi_io_num , io_signal [host ].spid_in , false);
270270 }
271- if (bus_config -> miso_io_num > 0 ) {
271+ if (bus_config -> miso_io_num >= 0 ) {
272272 PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> miso_io_num ], PIN_FUNC_GPIO );
273273 gpio_set_direction (bus_config -> miso_io_num , GPIO_MODE_INPUT_OUTPUT );
274274 gpio_matrix_out (bus_config -> miso_io_num , io_signal [host ].spiq_out , false, false);
275275 gpio_matrix_in (bus_config -> miso_io_num , io_signal [host ].spiq_in , false);
276276 }
277- if (use_quad && bus_config -> quadwp_io_num > 0 ) {
277+ if (use_quad && bus_config -> quadwp_io_num >= 0 ) {
278278 PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> quadwp_io_num ], PIN_FUNC_GPIO );
279279 gpio_set_direction (bus_config -> quadwp_io_num , GPIO_MODE_INPUT_OUTPUT );
280280 gpio_matrix_out (bus_config -> quadwp_io_num , io_signal [host ].spiwp_out , false, false);
281281 gpio_matrix_in (bus_config -> quadwp_io_num , io_signal [host ].spiwp_in , false);
282282 }
283- if (use_quad && bus_config -> quadhd_io_num > 0 ) {
283+ if (use_quad && bus_config -> quadhd_io_num >= 0 ) {
284284 PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> quadhd_io_num ], PIN_FUNC_GPIO );
285285 gpio_set_direction (bus_config -> quadhd_io_num , GPIO_MODE_INPUT_OUTPUT );
286286 gpio_matrix_out (bus_config -> quadhd_io_num , io_signal [host ].spihd_out , false, false);
287287 gpio_matrix_in (bus_config -> quadhd_io_num , io_signal [host ].spihd_in , false);
288288 }
289- if (bus_config -> sclk_io_num > 0 ) {
289+ if (bus_config -> sclk_io_num >= 0 ) {
290290 PIN_FUNC_SELECT (GPIO_PIN_MUX_REG [bus_config -> sclk_io_num ], PIN_FUNC_GPIO );
291291 gpio_set_direction (bus_config -> sclk_io_num , GPIO_MODE_INPUT_OUTPUT );
292292 gpio_matrix_out (bus_config -> sclk_io_num , io_signal [host ].spiclk_out , false, false);
0 commit comments