blob: 6b8895e45c09aed05fae582c43c6fb1b20acc5cf [file] [log] [blame]
// Copyright 2020 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.
composite buttons;
using fuchsia.gpio;
using fuchsia.hardware.gpio;
using fuchsia.platform;
using fuchsia.devicetree;
primary node "platform-device" {
if fuchsia.devicetree.FIRST_COMPATIBLE == "fuchsia,gpio-buttons" {
true;
} else {
fuchsia.BIND_PROTOCOL == fuchsia.platform.BIND_PROTOCOL.DEVICE;
fuchsia.BIND_PLATFORM_DEV_DID == fuchsia.platform.BIND_PLATFORM_DEV_DID.BUTTONS;
}
}
optional node "mic-privacy" {
fuchsia.hardware.gpio.Service == fuchsia.hardware.gpio.Service.ZirconTransport;
fuchsia.gpio.FUNCTION == fuchsia.gpio.FUNCTION.MIC_MUTE;
}
optional node "volume-up" {
fuchsia.hardware.gpio.Service == fuchsia.hardware.gpio.Service.ZirconTransport;
fuchsia.gpio.FUNCTION == fuchsia.gpio.FUNCTION.VOLUME_UP;
}
optional node "volume-down" {
fuchsia.hardware.gpio.Service == fuchsia.hardware.gpio.Service.ZirconTransport;
fuchsia.gpio.FUNCTION == fuchsia.gpio.FUNCTION.VOLUME_DOWN;
}
optional node "volume-both" {
fuchsia.hardware.gpio.Service == fuchsia.hardware.gpio.Service.ZirconTransport;
fuchsia.gpio.FUNCTION == fuchsia.gpio.FUNCTION.VOLUME_BOTH;
}
optional node "power" {
fuchsia.hardware.gpio.Service == fuchsia.hardware.gpio.Service.ZirconTransport;
fuchsia.gpio.FUNCTION == fuchsia.gpio.FUNCTION.POWER;
}