blob: 402d11884913a3f9f5a34c29f9678f8138040062 [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 <ddk/device.h>
#include <ddk/protocol/usb/hci.h>
typedef struct usb_device usb_device_t;
// Represents a USB bus, which manages all devices for a USB host controller
typedef struct usb_bus {
zx_device_t* zxdev;
zx_device_t* hci_zxdev;
usb_hci_protocol_t hci;
// top-level USB devices, indexed by device_id
usb_device_t** devices;
size_t max_device_count;
} usb_bus_t;