diff options
Diffstat (limited to 'cros_ec/main.c')
-rw-r--r-- | cros_ec/main.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/cros_ec/main.c b/cros_ec/main.c index 1a4dd78787..ff14b22b5e 100644 --- a/cros_ec/main.c +++ b/cros_ec/main.c @@ -9,16 +9,24 @@ #include "cros_ec/include/core.h" #include "cros_ec/include/ec_common.h" #include "cros_ec/include/ec_keyboard.h" +#include "board/board_interface.h" + + +#define ReturnIfInitFailed(func) \ + do { \ + EcError ret; \ + ret = func(); \ + if (ret != EC_SUCCESS) { \ + printf("%s() failed at %s:%d: %d\n", #func, __FILE__, __LINE__, ret); \ + return ret; \ + } \ + } while (0) EcError CoreMain() { - EcError ret; - ret = EcKeyboardInit(); - if (ret != EC_SUCCESS) { - printf("EcKeyboardInit() failed: %d\n", ret); - return ret; - } + ReturnIfInitFailed(EcKeyboardInit); + ReturnIfInitFailed(BoardInit); return EC_SUCCESS; } |