| // 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 display; |
| |
| using fuchsia.hardware.amlogiccanvas; |
| using fuchsia.hardware.dsi; |
| using fuchsia.hardware.hdmi; |
| using fuchsia.hardware.gpio; |
| using fuchsia.platform; |
| using fuchsia.sysmem; |
| using fuchsia.amlogic.platform; |
| |
| // TODO(fxbug.dev/125227): `dsi` must be the primary node. |
| // |
| // amlogic-display driver needs to create a DsiImpl banjo client, but there's |
| // no fragment proxy support for the DsiImpl protocol. |
| // |
| // As a result, the driver implementing DsiImpl protocol has to be a "primary" |
| // ancestor of amlogic-display and they must be colocated in the same devhost. |
| primary node "dsi" { |
| fuchsia.BIND_PROTOCOL == fuchsia.hardware.dsi.BIND_PROTOCOL.IMPL; |
| } |
| |
| node "pdev" { |
| 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.DISPLAY; |
| accept fuchsia.BIND_PLATFORM_DEV_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, |
| } |
| } |
| |
| node "gpio-lcd-reset" { |
| fuchsia.BIND_FIDL_PROTOCOL == fuchsia.hardware.gpio.BIND_FIDL_PROTOCOL.SERVICE; |
| fuchsia.hardware.gpio.FUNCTION == fuchsia.hardware.gpio.FUNCTION.LCD_RESET; |
| } |
| |
| optional node "gpio-hdmi-hotplug-detect" { |
| fuchsia.BIND_FIDL_PROTOCOL == fuchsia.hardware.gpio.BIND_FIDL_PROTOCOL.SERVICE; |
| fuchsia.hardware.gpio.FUNCTION == fuchsia.hardware.gpio.FUNCTION.HDMI_HOTPLUG_DETECT; |
| } |
| |
| node "sysmem" { |
| fuchsia.BIND_FIDL_PROTOCOL == fuchsia.sysmem.BIND_FIDL_PROTOCOL.DEVICE; |
| } |
| |
| node "canvas" { |
| fuchsia.hardware.amlogiccanvas.Service == fuchsia.hardware.amlogiccanvas.Service.ZirconTransport; |
| } |
| |
| optional node "hdmi" { |
| fuchsia.BIND_FIDL_PROTOCOL == fuchsia.hardware.hdmi.BIND_FIDL_PROTOCOL.SERVICE; |
| } |