blob: 0423167f6b340a1512b26157b6bc13a4b7b1e529 [file]
// Copyright 2021 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 focaltech_touch;
using fuchsia.hardware.pin;
using fuchsia.gpio;
using fuchsia.hardware.gpio;
using fuchsia.hardware.i2c;
using fuchsia.focaltech.platform;
using fuchsia.platform;
using fuchsia.devicetree;
primary parent "i2c" {
fuchsia.hardware.i2c.Service == fuchsia.hardware.i2c.Service.ZirconTransport;
}
parent "gpio-int" {
fuchsia.hardware.gpio.Service == fuchsia.hardware.gpio.Service.ZirconTransport;
fuchsia.gpio.FUNCTION == fuchsia.gpio.FUNCTION.TOUCH_INTERRUPT;
}
parent "gpio-reset" {
fuchsia.hardware.gpio.Service == fuchsia.hardware.gpio.Service.ZirconTransport;
fuchsia.gpio.FUNCTION == fuchsia.gpio.FUNCTION.TOUCH_RESET;
}
parent "pdev" {
fuchsia.BIND_PLATFORM_DEV_VID == fuchsia.platform.BIND_PLATFORM_DEV_VID.GENERIC;
if fuchsia.BIND_PLATFORM_DEV_DID == fuchsia.platform.BIND_PLATFORM_DEV_DID.FOCALTOUCH {
fuchsia.BIND_PLATFORM_DEV_PID == fuchsia.platform.BIND_PLATFORM_DEV_PID.GENERIC;
fuchsia.BIND_PROTOCOL == fuchsia.platform.BIND_PROTOCOL.DEVICE;
fuchsia.BIND_PLATFORM_DEV_INSTANCE_ID == 0;
} else {
accept fuchsia.devicetree.FIRST_COMPATIBLE {
"focaltech,ft3x27",
"focaltech,ft6336",
"focaltech,ft5726",
"focaltech,ft5336",
}
}
}
optional parent "gpio-init" {
fuchsia.BIND_INIT_STEP == fuchsia.gpio.BIND_INIT_STEP.GPIO;
}
optional parent "pin-states-0" {
fuchsia.hardware.pin.PinStatesService == fuchsia.hardware.pin.PinStatesService.ZirconTransport;
}