blob: 3c4a3e158731c0ead06fe9e1b8ea7017852227f4 [file] [log] [blame]
// Copyright 2024 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.
/// Driver protocol between magma and display drivers for virtio-gpu
@available(added=HEAD)
library fuchsia.gpu.virtio;
using zx;
@discoverable
closed protocol GpuControl {
/// Returns the number of capability sets supported by the virtio-gpu device.
strict GetCapabilitySetLimit() -> (struct {
limit uint64;
});
/// Sends an opaque hardware request of variable length and returns a variable length response.
/// Commands go on the control queue.
strict SendHardwareCommand(struct {
request vector<uint8>:MAX;
}) -> (struct {
response vector<uint8>:MAX;
}) error zx.Status;
};
service Service {
control client_end:GpuControl;
};