blob: d261efe05db929c9c4d98b45de688a7492488ef1 [file] [log] [blame]
// Copyright 2019 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.
#ifndef FUCHSIA_INCLUDE_FUCHSIA_COMMUNICATION_H_
#define FUCHSIA_INCLUDE_FUCHSIA_COMMUNICATION_H_
#include <stdint.h>
enum SemaphoreIndices
{
kSemaphoreCompletion,
kSemaphoreMax,
};
struct FuchsiaImgCommandPayload
{
// The bridge sets this to nonzero when it finishes executing the bridge
// command and modifying the output data.
uint32_t finished_command;
// The bridge sets this to nonzero if the last command succeeded.
uint32_t success;
uint64_t thread_id;
uint32_t bridge_group;
uint32_t function_id;
// Input and output data will immediately follow this struct in the buffer.
// Before the bridge call input data should be stored there, and after the
// bridge call output data will be stored there.
uint32_t in_data_size;
uint32_t out_data_size;
};
#endif // FUCHSIA_INCLUDE_FUCHSIA_COMMUNICATION_H_