You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by ac...@apache.org on 2022/11/15 20:01:56 UTC

[incubator-nuttx] 01/04: esp32[-s2]/i2s: fix gpio setting when slave mode is selected

This is an automated email from the ASF dual-hosted git repository.

acassis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git

commit 7ae4152f47d3564b102fe6473dfd40c4a08269c6
Author: Tiago Medicci Serrano <ti...@espressif.com>
AuthorDate: Thu Nov 10 10:32:48 2022 -0300

    esp32[-s2]/i2s: fix gpio setting when slave mode is selected
---
 arch/xtensa/src/esp32/esp32_i2s.c     | 16 ++++++++--------
 arch/xtensa/src/esp32s2/esp32s2_i2s.c | 18 +++++++++---------
 2 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/arch/xtensa/src/esp32/esp32_i2s.c b/arch/xtensa/src/esp32/esp32_i2s.c
index 0fcfb0b16d..96bc7b8503 100644
--- a/arch/xtensa/src/esp32/esp32_i2s.c
+++ b/arch/xtensa/src/esp32/esp32_i2s.c
@@ -1031,13 +1031,13 @@ static void i2s_configure(struct esp32_i2s_s *priv)
 
           esp32_gpiowrite(priv->config->ws_pin, 1);
           esp32_configgpio(priv->config->ws_pin, INPUT_FUNCTION_3);
-          esp32_gpio_matrix_out(priv->config->ws_pin,
-                                priv->config->ws_out_insig, 0, 0);
+          esp32_gpio_matrix_in(priv->config->ws_pin,
+                               priv->config->ws_out_insig, 0);
 
           esp32_gpiowrite(priv->config->bclk_pin, 1);
           esp32_configgpio(priv->config->bclk_pin, INPUT_FUNCTION_3);
-          esp32_gpio_matrix_out(priv->config->bclk_pin,
-                                priv->config->bclk_out_insig, 0, 0);
+          esp32_gpio_matrix_in(priv->config->bclk_pin,
+                               priv->config->bclk_out_insig, 0);
         }
       else
         {
@@ -1047,13 +1047,13 @@ static void i2s_configure(struct esp32_i2s_s *priv)
 
           esp32_gpiowrite(priv->config->ws_pin, 1);
           esp32_configgpio(priv->config->ws_pin, INPUT_FUNCTION_3);
-          esp32_gpio_matrix_out(priv->config->ws_pin,
-                                priv->config->ws_in_insig, 0, 0);
+          esp32_gpio_matrix_in(priv->config->ws_pin,
+                               priv->config->ws_in_insig, 0);
 
           esp32_gpiowrite(priv->config->bclk_pin, 1);
           esp32_configgpio(priv->config->bclk_pin, INPUT_FUNCTION_3);
-          esp32_gpio_matrix_out(priv->config->bclk_pin,
-                                priv->config->bclk_in_insig, 0, 0);
+          esp32_gpio_matrix_in(priv->config->bclk_pin,
+                               priv->config->bclk_in_insig, 0);
         }
     }
   else
diff --git a/arch/xtensa/src/esp32s2/esp32s2_i2s.c b/arch/xtensa/src/esp32s2/esp32s2_i2s.c
index 47f969626d..e42103538d 100644
--- a/arch/xtensa/src/esp32s2/esp32s2_i2s.c
+++ b/arch/xtensa/src/esp32s2/esp32s2_i2s.c
@@ -347,7 +347,7 @@ static const struct esp32s2_i2s_config_s esp32s2_i2s0_config =
   .data_width       = CONFIG_ESP32S2_I2S_DATA_BIT_WIDTH,
   .rate             = CONFIG_ESP32S2_I2S_SAMPLE_RATE,
   .total_slot       = 2,
-  .mclk_multiple    = I2S_MCLK_MULTIPLE_256,
+  .mclk_multiple    = I2S_MCLK_MULTIPLE_384,
   .tx_en            = I2S_TX_ENABLED,
   .rx_en            = I2S_RX_ENABLED,
 #ifdef CONFIG_ESP32S2_I2S_MCLK
@@ -939,13 +939,13 @@ static void i2s_configure(struct esp32s2_i2s_s *priv)
 
           esp32s2_gpiowrite(priv->config->ws_pin, 1);
           esp32s2_configgpio(priv->config->ws_pin, INPUT_FUNCTION_2);
-          esp32s2_gpio_matrix_out(priv->config->ws_pin,
-                                  priv->config->ws_out_insig, 0, 0);
+          esp32s2_gpio_matrix_in(priv->config->ws_pin,
+                                 priv->config->ws_out_insig, 0);
 
           esp32s2_gpiowrite(priv->config->bclk_pin, 1);
           esp32s2_configgpio(priv->config->bclk_pin, INPUT_FUNCTION_2);
-          esp32s2_gpio_matrix_out(priv->config->bclk_pin,
-                                  priv->config->bclk_out_insig, 0, 0);
+          esp32s2_gpio_matrix_in(priv->config->bclk_pin,
+                                 priv->config->bclk_out_insig, 0);
         }
       else
         {
@@ -955,13 +955,13 @@ static void i2s_configure(struct esp32s2_i2s_s *priv)
 
           esp32s2_gpiowrite(priv->config->ws_pin, 1);
           esp32s2_configgpio(priv->config->ws_pin, INPUT_FUNCTION_2);
-          esp32s2_gpio_matrix_out(priv->config->ws_pin,
-                                  priv->config->ws_in_insig, 0, 0);
+          esp32s2_gpio_matrix_in(priv->config->ws_pin,
+                                 priv->config->ws_in_insig, 0);
 
           esp32s2_gpiowrite(priv->config->bclk_pin, 1);
           esp32s2_configgpio(priv->config->bclk_pin, INPUT_FUNCTION_2);
-          esp32s2_gpio_matrix_out(priv->config->bclk_pin,
-                                  priv->config->bclk_in_insig, 0, 0);
+          esp32s2_gpio_matrix_in(priv->config->bclk_pin,
+                                 priv->config->bclk_in_insig, 0);
         }
     }
   else