mirror of
https://github.com/espressif/esp-idf.git
synced 2026-08-18 06:35:35 +03:00
Merge branch 'feat/add_sdio_slave_reset_hardware_support' into 'master'
add sdio_slave_reset_hw See merge request espressif/esp-idf!39686
This commit is contained in:
@@ -276,6 +276,16 @@ There are several ways to use the ``arg`` in the queue parameter:
|
||||
|
||||
For more about this, see :example:`peripherals/sdio`.
|
||||
|
||||
Reset SDIO
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Calling ``sdio_slave_reset`` can reset PKT_LEN (Packet length accumulator value) and TOKEN1 (Receiving buffers accumulated number) at the SDIO slave driver software level to resynchronize the transmit and receive counts with the host.
|
||||
|
||||
If there is a usage scenario where the ESP chip remains powered on but the HOST is powered off. During the power-off period of the HOST, some unknown signals may be generated on the SDIO signal line, causing the SDIO hardware state machine to be abnormal. The HOST restarts and executes the card identification process, and the ESP will not respond normally. In this case, consider calling ``sdio_slave_reset_hw`` to reset the SDIO hardware.
|
||||
|
||||
.. note::
|
||||
|
||||
Reset the SDIO hardware. The interrupt enable status and shared register values will be lost. You may need to call ``sdio_slave_set_host_intena`` and ``sdio_slave_write_reg`` to set them.
|
||||
|
||||
Application Example
|
||||
-------------------
|
||||
|
||||
@@ -276,6 +276,16 @@ SDIO 从机驱动程序的相关术语如下:
|
||||
|
||||
更多详情,请参阅 :example:`peripherals/sdio`。
|
||||
|
||||
重置 SDIO
|
||||
^^^^^^^^^^^^
|
||||
|
||||
调用 ``sdio_slave_reset`` 可以重置 SDIO 从机驱动程序软件层面的 PKT_LEN (从机发送包长度累加值) 和 TOKEN1 (接收 buffer 累计数量), 便于与主机重新同步收发计数。
|
||||
|
||||
如果存在 ESP 芯片保持上电状态,但 HOST 端会下电的使用场景。HOST 端下电期间, SDIO 信号线上可能会产生一些未知的信号导致 SDIO 硬件状态机异常。HOST 重新启动, 执行卡识别流程, ESP 将不会正常响应。这种情况下,考虑调用 ``sdio_slave_reset_hw``, 重置 SDIO 硬件。
|
||||
|
||||
.. note::
|
||||
|
||||
重置 SDIO 硬件,中断使能状态和共享寄存器的值会丢失,可能需要调用 ``sdio_slave_set_host_intena``、 ``sdio_slave_write_reg`` 设置。
|
||||
|
||||
应用示例
|
||||
--------
|
||||
|
||||
Reference in New Issue
Block a user