/*
* hardware watchdog
*/#ifdef config_hw_watchdog
#if defined(__assembly__)
#define watchdog_reset bl hw_watchdog_reset
#else
extern void hw_watchdog_reset(void);
#define watchdog_reset hw_watchdog_reset
#endif /* __assembly__ */
#else
/* * maybe a software watchdog?
*/#if defined(config_watchdog)
#if defined(__assembly__)
#define watchdog_reset bl watchdog_reset
#else
extern void watchdog_reset(void);
#define watchdog_reset watchdog_reset
#endif
#else
/** no hardware or software watchdog.
*/#if defined(__assembly__)
#define watchdog_reset /**** do_not_del_this_comment*/
#else
#define watchdog_reset() {}
#endif /* __assembly__ */
#endif /* config_watchdog && !__assembly__ */
#endif /* config_hw_watchdog */
(一)配置巨集
在/include/configs/hi3520dv400.h 中定義巨集 config_hw_watchdog
#define config_hw_watchdog 1
(二)函式實現
回到最前面的**我們知道,如果定義了硬體看門狗餵狗,則需要實現函式extern int hw_watchdog_reset(void);
找乙個位置新增兩個檔案:hiwtdog.h,hiwtdog.c,然後將這兩個檔案編譯進uboot就可以了。
hiwtdog.h
#ifndef _hiwtdog_h
#define _hiwtdog_h
#include #include #include #include #define hi_gpio_muti_base_addr (0x120f0000)
#define hi_gpio6_base_addr (0x121b0000)
#define hi_muti_set_gpio_wtdog hi_gpio_muti_base_addr+0x0f0 // //1:gpio6_2;
#define gpio_data_wtdog hi_gpio6_base_addr+0x03fc //
#define gpio_dir_wtdog hi_gpio6_base_addr+0x400 // //1:輸出
extern int hw_watchdog_reset(void);
#endif
注意:如果是其它平台的晶元,hi_gpio_muti_base_addr 和 hi_gpio6_base_addr根據實際修改就可以。
hiwtdog.c
#include"hiwtdog.h"
int hw_watchdog_reset(void)
uboot 預設ftp ,串列埠等位置都有新增hw_watchdog_reset()函式進行餵狗,如果啟動其它功能時uboot復位了,則可以自己在該功能的合適位置進行餵狗操作就可以了。 新手玩海思HI3520D開發板(一,sdk安裝)
1 hi3520d sdk包位置 在 hi3520d v100r001 01.software board 目錄下,您可以看到乙個 hi3520d sdk vx.x.x.x.tgz 的檔案,該檔案就是hi3520d的軟體開發包。2 解壓縮sdk包 在linux伺服器上 或者一台裝有linux的pc上...
開發海思3520a遇到的問題
海思3520a新做的板子回來乙個多一星了,幾乎一直在除錯同乙個問題 獲取不到編碼後的資料。之前一直在除錯vi通道或者nvp1118b 我們沒有用tw28系列的 今天除錯了一直,看了nvp1118b的驅動和vi通道的初始化,幾乎沒什麼漏洞。之前一直說要檢查記憶體有沒問題,一直沒有試 因為本來應該貼一塊...
海思Hi3516A上移植OpenCV
最近新換了工作,工作中一項任務是將opencv移植到hi3516a平台上。這項工作涉及到很多步驟,中間可以說經歷了千難萬險,克服了種種艱難困苦,最終成功了!現將過程詳細寫出,一方面作為此段工作的總結和回顧,另一方面也使後來者能不必再經歷我所經歷的困難乃至苦難。言歸正傳。這個任務需要很多步驟,下邊一步...