En raison d’un bogue dans U-Boot 2022.10 et les versions antérieures, la fonction WATCHDOG_RESET ne parviendra pas à réinitialiser le chien de garde une fois que U-Boot fonctionnera pendant plus de 533 jours 18h 14m, car WATCHDOG_RESET obtient la valeur d’un registre de compteur système 64bits comme horodatage pour calculer la période d’intervalle, mais il ne vérifie pas si le registre déborde.
Il existe deux façons d’éviter un tel échec :
- N’utilisez pas la fonction WATCHDOG_RESET du chien de garde Driver Model (DM) dans U-Boot 2022.10 et les versions antérieures ; Utilisez plutôt l’interface du pilote de périphérique de surveillance.
- Effectuez une mise à niveau vers U-Boot 2023.01 ou une version ultérieure.
C’est un bug U-Boot et à partir de U-Boot 2023.01, il a été corrigé, veuillez vous référer au lien ci-dessous :