// Copyright 2022 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.tpm;

using zx;

/// This interface is intended to remove TPM ownership
/// and clear any keying material when the device is factory reset.
@discoverable
closed protocol Deprovision {
    /// Connects to the Physical Presence Interface via ACPI and
    /// instructs the firmware to reset the TPM on reboot.
    strict RemoveOwnership(table {}) -> () error zx.Status;
};
