blob: 4cabb9b4d7e4b00a87bfdb6dbf899476dab292a7 [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 ddk.protocol.clockimpl;
using zx;
/// Each method in this protocol has a corresponding method in clock.banjo
/// See clock.banjo for documentation for each method.
[Layout = "ddk-protocol"]
protocol ClockImpl {
/// Clock Gating Control.
Enable(uint32 id) -> (zx.status s);
Disable(uint32 id) -> (zx.status s);
IsEnabled(uint32 id) -> (zx.status s, bool enabled);
/// Clock Frequency Scaling Control.
SetRate(uint32 id, uint64 hz) -> (zx.status s);
QuerySupportedRate(uint32 id, uint64 hz) -> (zx.status s, uint64 hz);
GetRate(uint32 id) -> (zx.status s, uint64 hz);
};