blob: 2a9f7f8df0eb27bb8503ad7dc06343bc1a16bb86 [file] [log] [blame]
// Copyright 2019 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.
library fuchsia.device.manager;
using zx;
/// Dumps text debug information.
///
/// All methods dump ascii text into a VMO, this allows the caller the flexibility to decide
/// how much data they want. Use the returned `written` value to read the data, no string
/// termination is guaranteed.
@discoverable
@for_deprecated_c_bindings
protocol DebugDumper {
/// Print device tree into `output`, returns bytes `written` and bytes `available` to write.
DumpTree(resource struct {
output zx.handle:VMO;
}) -> (struct {
status zx.status;
written uint64;
available uint64;
});
/// Print information about all drivers into `output`, returns bytes `written` and bytes `available` to write.
DumpDrivers(resource struct {
output zx.handle:VMO;
}) -> (struct {
status zx.status;
written uint64;
available uint64;
});
/// Print all devices and their binding properties into `output`, returns bytes `written`
/// and bytes `available` to write.
DumpBindingProperties(resource struct {
output zx.handle:VMO;
}) -> (struct {
status zx.status;
written uint64;
available uint64;
});
};