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

Merge branch 'bugfix/spi_master_multiple_dev_with_diff_cs_lvl_4.0' into 'release/v4.0'

spi_master: correctly set cs polarity (4.0)

See merge request espressif/esp-idf!10403
Michael (XIAO Xufeng) 4 лет назад
Родитель
Сommit
41efdb0b34
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      components/soc/include/hal/spi_ll.h

+ 2 - 2
components/soc/include/hal/spi_ll.h

@@ -275,7 +275,7 @@ static inline void spi_ll_master_set_pos_cs(spi_dev_t *hw, int cs, uint32_t pos_
     if (pos_cs) {
         hw->pin.master_cs_pol |= (1 << cs);
     } else {
-        hw->pin.master_cs_pol &= (1 << cs);
+        hw->pin.master_cs_pol &= ~(1 << cs);
     }
 }
 
@@ -599,7 +599,7 @@ static inline void spi_ll_master_set_cksel(spi_dev_t *hw, int cs, uint32_t cksel
     if (cksel) {
         hw->pin.master_ck_sel |= (1 << cs);
     } else {
-        hw->pin.master_ck_sel &= (1 << cs);
+        hw->pin.master_ck_sel &= ~(1 << cs);
     }
 }