blob: d3614be24dc6da7058077a3d5cf63c2578370a39 [file] [log] [blame]
// 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.
library fuchsia.hardware.pwm;
type PwmChannelInfo = table {
/// Unique id of PWM channel.
1: id uint32;
/// If true, the PWM channel will NOT be initialized. This is for use in situations where a
/// bootloader configuration must be preserved or the PWM channel may be under control of higher
/// exception level. (for a dvfs rail for example)
2: skip_init bool;
/// If true, the polarity will be inverted.
3: polarity bool;
/// PWM period in nanoseconds.
4: period_ns uint32;
};
/// Metadata to configure PWM channels. Passed under DEVICE_METADATA_PWM_CHANNELS.
type PwmChannelsMetadata = table {
1: channels vector<PwmChannelInfo>:MAX;
};