mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'bugfix/i2s_update_regs_before_start_v4.4' into 'release/v4.4'
i2s: fixed rx update stuck bug (v4.4) See merge request espressif/esp-idf!21777
This commit is contained in:
commit
969569dec0
@ -308,8 +308,8 @@ static inline void i2s_ll_rx_set_clk(i2s_dev_t *hw, i2s_ll_mclk_div_t *set)
|
|||||||
*/
|
*/
|
||||||
static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
||||||
{
|
{
|
||||||
hw->tx_conf.tx_update = 0;
|
|
||||||
hw->tx_conf.tx_update = 1;
|
hw->tx_conf.tx_update = 1;
|
||||||
|
while (hw->tx_conf.tx_update);
|
||||||
hw->tx_conf.tx_start = 1;
|
hw->tx_conf.tx_start = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -320,8 +320,8 @@ static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
|||||||
*/
|
*/
|
||||||
static inline void i2s_ll_rx_start(i2s_dev_t *hw)
|
static inline void i2s_ll_rx_start(i2s_dev_t *hw)
|
||||||
{
|
{
|
||||||
hw->rx_conf.rx_update = 0;
|
|
||||||
hw->rx_conf.rx_update = 1;
|
hw->rx_conf.rx_update = 1;
|
||||||
|
while (hw->rx_conf.rx_update);
|
||||||
hw->rx_conf.rx_start = 1;
|
hw->rx_conf.rx_start = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -309,8 +309,8 @@ static inline void i2s_ll_rx_set_clk(i2s_dev_t *hw, i2s_ll_mclk_div_t *set)
|
|||||||
*/
|
*/
|
||||||
static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
||||||
{
|
{
|
||||||
hw->tx_conf.tx_update = 0;
|
|
||||||
hw->tx_conf.tx_update = 1;
|
hw->tx_conf.tx_update = 1;
|
||||||
|
while (hw->tx_conf.tx_update);
|
||||||
hw->tx_conf.tx_start = 1;
|
hw->tx_conf.tx_start = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -321,8 +321,8 @@ static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
|||||||
*/
|
*/
|
||||||
static inline void i2s_ll_rx_start(i2s_dev_t *hw)
|
static inline void i2s_ll_rx_start(i2s_dev_t *hw)
|
||||||
{
|
{
|
||||||
hw->rx_conf.rx_update = 0;
|
|
||||||
hw->rx_conf.rx_update = 1;
|
hw->rx_conf.rx_update = 1;
|
||||||
|
while (hw->rx_conf.rx_update);
|
||||||
hw->rx_conf.rx_start = 1;
|
hw->rx_conf.rx_start = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -311,8 +311,8 @@ static inline void i2s_ll_rx_set_clk(i2s_dev_t *hw, i2s_ll_mclk_div_t *set)
|
|||||||
*/
|
*/
|
||||||
static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
||||||
{
|
{
|
||||||
hw->tx_conf.tx_update = 0;
|
|
||||||
hw->tx_conf.tx_update = 1;
|
hw->tx_conf.tx_update = 1;
|
||||||
|
while (hw->tx_conf.tx_update);
|
||||||
hw->tx_conf.tx_start = 1;
|
hw->tx_conf.tx_start = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -323,8 +323,8 @@ static inline void i2s_ll_tx_start(i2s_dev_t *hw)
|
|||||||
*/
|
*/
|
||||||
static inline void i2s_ll_rx_start(i2s_dev_t *hw)
|
static inline void i2s_ll_rx_start(i2s_dev_t *hw)
|
||||||
{
|
{
|
||||||
hw->rx_conf.rx_update = 0;
|
|
||||||
hw->rx_conf.rx_update = 1;
|
hw->rx_conf.rx_update = 1;
|
||||||
|
while (hw->rx_conf.rx_update);
|
||||||
hw->rx_conf.rx_start = 1;
|
hw->rx_conf.rx_start = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user