[U-Boot] Watchdog DM - ENOMEM error identified - need suggestions
sunil.m at techveda.org
Fri Jun 28 14:24:12 UTC 2019
I converted watchdog driver(omap3_wdt) on TI AM33XX platform to Driver Model.
I am getting the following error when tested on BeagleBone Black:
U-Boot 2019.07-rc4-00179-g77f6e2d-dirty (Jun 27 2019 - 15:11:15 +0530)
CPU : AM335X-GP rev 2.1
Model: TI AM335x BeagleBone Black
DRAM: 512 MiB
WDT: Started with servicing (60s timeout)
Error binding driver 'omap_timer': -12
The error happens when the code is at initr_watchdog() (common/board_r.c) during initialization.
initr_dm => initr_watchdog => board_init => set_cpu_clk_info => efi_memory_init => stdio_init_tables => initr_serial
After few tests, found out that when initr_watchdog() is moved ahead and placed after
initr_serial(), the error disappears and the board responds.
New sequence is:
initr_dm => board_init => set_cpu_clk_info => efi_memory_init => stdio_init_tables => initr_serial => initr_watchdog
Couldn't find an explanation for such behaviour ?
Is it ok to move initr_watchdog() ahead and after initr_serial() in board_r.c ?
The watchdog DM driver has successfully got binded (checked the debug log).
Embedded Linux, Kernel & U-Boot engineer
More information about the U-Boot