| // Copyright 2018 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. |
| |
| library ddk.protocol.amlogic_canvas; |
| |
| using zx; |
| |
| struct CanvasInfo { |
| uint32 height; |
| uint32 stride_bytes; |
| uint32 wrap; |
| uint32 blkmode; |
| uint32 endianness; |
| }; |
| |
| [Layout="ddk-protocol", DefaultProtocol] |
| interface Canvas { |
| /// Configures a canvas. |
| /// Adds a framebuffer to the canvas lookup table. |
| 1: Config(handle<vmo> vmo, usize offset, CanvasInfo info) -> (zx.status s, uint8 canvas_idx); |
| /// Frees up a canvas. |
| 2: Free(uint8 canvas_idx) -> (zx.status s); |
| }; |