blob: ed1d1f175be056eea99467e19f32906a8a8f897e [file]
// Copyright 2026 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.
{
name: "amlogic_video_bind",
composite_name: "aml_video",
include: [
"//sdk/lib/driver/compat/compat.shard.cml",
"driver/platform-device.shard.cml",
],
program: {
compat: "driver/amlogic_video_decoder.so",
default_dispatcher_opts: [ "allow_sync_calls" ],
allowed_scheduler_roles: [
"fuchsia.media.drivers.amlogic-decoder.fidl",
"fuchsia.media.drivers.amlogic-decoder.parser-irq",
"fuchsia.media.drivers.amlogic-decoder.vdec-irq",
"fuchsia.media.drivers.amlogic-decoder.h264-core",
"fuchsia.media.drivers.amlogic-decoder.h264-stream-control",
"fuchsia.media.drivers.amlogic-decoder.vp9-input-processing",
"fuchsia.media.drivers.amlogic-decoder.vp9-stream-control",
],
},
use: [
{
name: "pdev",
primary: true,
bind: {
one_of: [
{
vid: "fuchsia.platform.BIND_PLATFORM_DEV_VID.GENERIC",
did: "fuchsia.platform.BIND_PLATFORM_DEV_DID.DEVICETREE",
compat: [
"amlogic,g12a-vdec",
"amlogic,g12b-vdec",
],
},
{
protocol: "fuchsia.platform.BIND_PROTOCOL.DEVICE",
vid: "fuchsia.amlogic.platform.BIND_PLATFORM_DEV_VID.AMLOGIC",
did: "fuchsia.amlogic.platform.BIND_PLATFORM_DEV_DID.VIDEO",
pid: [
"fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.A311D",
"fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.S905D2",
"fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.S905D3",
"fuchsia.amlogic.platform.BIND_PLATFORM_DEV_PID.T931",
],
},
],
},
},
{ protocol: "fuchsia.scheduler.RoleManager" },
{ protocol: "fuchsia.sysmem2.Allocator" },
{
name: "canvas",
service: "fuchsia.hardware.amlogiccanvas.Service",
},
{
name: "tee",
service: "fuchsia.hardware.tee.Service",
availability: "optional",
},
{
name: "clock-dos-vdec",
service: "fuchsia.hardware.clock.Service",
bind: {
rules: { "fuchsia.NAME": "clock-dos-vdec" },
},
},
{
name: "clock-dos",
service: "fuchsia.hardware.clock.Service",
bind: {
rules: { "fuchsia.NAME": "clock-dos" },
},
},
],
}