blob: 756390bb2a3c8196d4eab071ad799f7e79981d14 [file] [log] [blame]
// Copyright 2017 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_DEVICES_DRIVER_MANAGER_LOG_H_
#define SRC_DEVICES_DRIVER_MANAGER_LOG_H_
#include <stdint.h>
#include <stdio.h>
namespace devmgr {
// clang-format off
#define LOG_ERROR 0x001
#define LOG_INFO 0x002
#define LOG_TRACE 0x004
#define LOG_SPEW 0x008
#define LOG_RPC_IN 0x010
#define LOG_RPC_OUT 0x020
#define LOG_RPC_RIO 0x040
#define LOG_RPC_SDW 0x080
#define LOG_DEVFS 0x100
#define LOG_DEVLC 0x200
#define LOG_ALL 0x3ff
// clang-format on
extern uint32_t log_flags;
#define log(flag, fmt...) \
do { \
if (LOG_##flag & ::devmgr::log_flags) \
printf(fmt); \
} while (0)
} // namespace devmgr
#endif // SRC_DEVICES_DRIVER_MANAGER_LOG_H_