歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> u-boot中的date命令

u-boot中的date命令

日期:2017/3/1 9:54:52   编辑:Linux編程

[u-boot: v2013.07-rc3]

[Author: Bo Shen [email protected]]

1. 使能date命令

需要定義:CONFIG_CMD_DATE, 由於date命令是讀取RTC內的時間,所以必須使用相關SOC自帶rtc的驅動,或者板上的rtc芯片。具體根據板子情況來決定 。當這兩都兼備後,就可以使能date命令了。

源代碼:<common/cmd_date.c>

2. date命令的使用

2.1 date命令不帶參數,即為讀取rtc時間,並顯示成我們可讀的格式。

2.2 date命令帶參數,用於設置rtc的時間。

2.2.1 設置rtc時間為: 7月19號, 22點50分

date 07192250

3. 源代碼分析

do_date

|--> 定義一個rtc_time <include/rtc.h>的結構體

|--> 設置正確的i2c總線。(對於使用片上rtc,此處始終返回為0)

|--> 判斷date命令的參數個數。

|--> 如果是一個,則是顯示時間,調用rtc_get函數。如果讀取失敗,則顯示錯誤信息後退出。

|--> 如果是兩個,則進一步判斷。

|--> 如果是reset,則輸出“Reset RTC..."後,調用rtc_reset函數。

|--> 如果不是reset,首先調用ret_get函數獲取時間,如果正確,則通過mk_date將date命令的參數轉換為rtc_time結構體。最後調用rtc_set函數。

注:由上面的代碼分析,可以發現,在u-boot中,實現rtc的驅動,只要實現rtc_get, rtc_reset, rtc_set函數即可。

Copyright © Linux教程網 All Rights Reserved