blob: 51c72e0dde43c789834aaa9570d8eb783af6093c [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 aml_video;
primary parent "pdev" {
if fuchsia.BIND_PLATFORM_DEV_VID == fuchsia.platform.BIND_PLATFORM_DEV_VID.GENERIC {
fuchsia.BIND_PLATFORM_DEV_DID == fuchsia.platform.BIND_PLATFORM_DEV_DID.DEVICETREE;
accept fuchsia.devicetree.FIRST_COMPATIBLE {
"amlogic,g12a-vdec",
"amlogic,g12b-vdec",
}
} else {
fuchsia.BIND_PROTOCOL == fuchsia.platform.BIND_PROTOCOL.DEVICE;
fuchsia.BIND_PLATFORM_DEV_VID == fuchsia.amlogic.platform.BIND_PLATFORM_DEV_VID.AMLOGIC;
fuchsia.BIND_PLATFORM_DEV_DID == fuchsia.amlogic.platform.BIND_PLATFORM_DEV_DID.VIDEO;
accept fuchsia.BIND_PLATFORM_DEV_PID {
fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.T931,
fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.A311D,
fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.S905D2,
fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.S905D3,
}
}
}
parent "canvas" {
fuchsia.hardware.amlogiccanvas.Service == fuchsia.hardware.amlogiccanvas.Service.ZirconTransport;
}
parent "clock-dos-vdec" {
fuchsia.hardware.clock.Service == fuchsia.hardware.clock.Service.ZirconTransport;
fuchsia.clock.FUNCTION == fuchsia.clock.FUNCTION.DOS_GCLK_VDEC;
}
parent "clock-dos" {
fuchsia.hardware.clock.Service == fuchsia.hardware.clock.Service.ZirconTransport;
fuchsia.clock.FUNCTION == fuchsia.clock.FUNCTION.DOS;
}
optional parent "tee" {
fuchsia.hardware.tee.Service == fuchsia.hardware.tee.Service.ZirconTransport;
}