| // Copyright 2020 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef SRC_FIRMWARE_LIB_ZIRCON_BOOT_UTILS_H_ |
| #define SRC_FIRMWARE_LIB_ZIRCON_BOOT_UTILS_H_ |
| |
| #define METHOD_CALL_ARGS(...) , ##__VA_ARGS__ |
| #define ZIRCON_BOOT_OPS_CALL(zircon_boot_ops, method, ...) \ |
| ({ \ |
| assert(zircon_boot_ops->method); \ |
| zircon_boot_ops->method(zircon_boot_ops METHOD_CALL_ARGS(__VA_ARGS__)); \ |
| }) |
| |
| // Set to 1 to enable debug logging - requires printf(). |
| #define ZIRCON_BOOT_DEBUG_LOGGING 0 |
| #if ZIRCON_BOOT_DEBUG_LOGGING |
| #define zircon_boot_dlog(...) printf("zircon_boot: " __VA_ARGS__) |
| #else |
| #define zircon_boot_dlog(...) |
| #endif |
| |
| #endif // SRC_FIRMWARE_LIB_ZIRCON_BOOT_UTILS_H_ |