-[Disabling the SDIO Device](#section15379324143611)
-[Releasing the Exclusively Claimed Host](#section536018263713)
-[Closing an SDIO Controller](#section4752739183716)
-[Usage Example](#section376910122382)
## Overview<a name="section1155271783811"></a>
- Secure Digital Input/Output \(SDIO\) is a peripheral interface evolved from the Secure Digital \(SD\) memory card interface. The SDIO interface is compatible with SD memory cards and can be connected to devices that support the SDIO interface.
-[Setting the UART Transmission Mode](#section72713435918)
-[Writing Data of a Specified Length into a UART Device](#section128001736155919)
-[Reading Data of a Specified Length from a UART Device](#section92851601604)
-[Destroying the UART Device Handle](#section1477410521406)
-[Usage Example](#section35404241311)
## Overview<a name="section833012453535"></a>
- The Universal Asynchronous Receiver/Transmitter \(UART\) is a universal serial data bus used for asynchronous communication. It enables bi-directional communication between devices in full-duplex mode.
-[Obtaining the Watchdog Status](#section786624341011)
-[Setting the Timeout Duration](#section182386137111)
-[Obtaining the Timeout Duration](#section1883310371114)
-[Starting a Watchdog](#section82501405123)
-[Feeding a Watchdog](#section3547530101211)
-[Stopping a Watchdog](#section944595841217)
-[Closing a Watchdog](#section96561824121311)
-[Usage Example](#section1724514523135)
## Overview<a name="section14918241977"></a>
A watchdog, also called a watchdog timer, is a hardware timing device. If an error occurs in the main program of the system and fails to reset the watchdog timer, the watchdog timer sends a reset signal to restore the system to a normal state.
>For details, see [WatchdogMethod](#section220331929) and [Table 1](#table1370451732).
4. Debug the driver.
-\(Optional\) For new drivers, verify basic functions, for example, verify the information returned after the connect operation and whether the watchdog timer is successfully set.
### WatchdogMethod<a name="section220331929"></a>
WatchdogMethod
```
struct WatchdogMethod {
...
...
@@ -137,6 +110,31 @@ struct WatchdogMethod {
</tbody>
</table>
## How to Develop<a name="section477974542160117"></a>
The Watchdog module adaptation involves the following steps:
1. Instantiate the driver entry.
- Instantiate the **HdfDriverEntry** structure.
- Call **HDF\_INIT** to register the **HdfDriverEntry** instance with the HDF framework.
2. Configure attribute files.
- Add the **deviceNode** information to the **device\_info.hcs** file.
-\(Optional\) Add the **watchdog\_config.hcs** file.
3. Instantiate the Watchdog controller object.
- Initialize **WatchdogCntlr**.
- Instantiate **WatchdogMethod** in the **WatchdogCntlr** object.
>For details, see [WatchdogMethod](#section220331929) and [Table 1](#table1370451732).
4. Debug the driver.
-\(Optional\) For new drivers, verify basic functions, for example, verify the information returned after the connect operation and whether the watchdog timer is successfully set.
## Development Example<a name="section1832270347160117"></a>
The following uses **watchdog\_hi35xx.c** as an example to present the contents that need to be provided by the vendor to implement device functions.