blob: 31e8b37517c19626677c86d8cc1cd7e2f6f8f963 [file] [log] [blame]
// 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.
#pragma once
#include <zircon/compiler.h>
#include <zircon/types.h>
__BEGIN_CDECLS;
typedef struct {
zx_status_t (*do_usb_tuning)(void* ctx, bool set_default);
} astro_usb_protocol_ops_t;
typedef struct {
astro_usb_protocol_ops_t* ops;
void* ctx;
} astro_usb_protocol_t;
static inline zx_status_t astro_usb_do_usb_tuning(astro_usb_protocol_t* usb, bool set_default) {
return usb->ops->do_usb_tuning(usb->ctx, set_default);
}
__END_CDECLS;