summaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2021-07-29 13:59:12 +0300
committerMichal Simek <michal.simek@xilinx.com>2021-08-06 10:32:02 +0300
commita1ae55ee7f8df911649a0cfa5eba3ea88bae92ab (patch)
treed10e72ac7a6cdc96e1b54e11fd455d97b8c4b4dd /cmd
parent23a328769a2638e87131198ad1e93000f69d6393 (diff)
downloadu-boot-a1ae55ee7f8df911649a0cfa5eba3ea88bae92ab.tar.xz
cmd: date: rtc: Update command to read the first RTC with seq 0
RTCs are using sequence number defined in aliases node. Date command with DM_RTC enabled is looking for the first RTC with index 0. But when RTC_EMULATION is enabled it gets likely most of the time index 0 even when system has rtc0 device via aliases node and gets sequence number 0. That's why extend the code to look for sequence 0 number first. If this fails continue to use existing device with index 0. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'cmd')
-rw-r--r--cmd/date.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/cmd/date.c b/cmd/date.c
index e377cfe165..149ca426e8 100644
--- a/cmd/date.c
+++ b/cmd/date.c
@@ -41,10 +41,13 @@ static int do_date(struct cmd_tbl *cmdtp, int flag, int argc,
#ifdef CONFIG_DM_RTC
struct udevice *dev;
- rcode = uclass_get_device(UCLASS_RTC, 0, &dev);
+ rcode = uclass_get_device_by_seq(UCLASS_RTC, 0, &dev);
if (rcode) {
- printf("Cannot find RTC: err=%d\n", rcode);
- return CMD_RET_FAILURE;
+ rcode = uclass_get_device(UCLASS_RTC, 0, &dev);
+ if (rcode) {
+ printf("Cannot find RTC: err=%d\n", rcode);
+ return CMD_RET_FAILURE;
+ }
}
#elif defined(CONFIG_SYS_I2C_LEGACY)
old_bus = i2c_get_bus_num();