| // Copyright 2024 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. |
| @available(added=HEAD) |
| library fuchsia.hardware.clock.measure; |
| |
| using zx; |
| |
| const MAX_NAME_LEN uint32 = 256; |
| |
| type FrequencyInfo = struct { |
| name string:MAX_NAME_LEN; |
| frequency uint64; |
| }; |
| |
| /// Used to measure clock frequency of various clocks in the system. |
| open protocol Measurer { |
| flexible Measure(struct { |
| clock uint32; |
| }) -> (struct { |
| info FrequencyInfo; |
| }) error zx.Status; |
| flexible GetCount() -> (struct { |
| count uint32; |
| }); |
| }; |
| |
| service Service { |
| measurer client_end:Measurer; |
| }; |