blob: 08f70ce97cc643b2ed2a1c312cda8997729b4e0e [file] [log] [blame]
Sai Pavan Boddu8ddab8d2020-09-24 19:50:52 +05301/*
2 * USB xHCI controller emulation
3 *
4 * Copyright (c) 2011 Securiforest
5 * Date: 2011-05-11 ; Author: Hector Martin <hector@marcansoft.com>
6 * Based on usb-ohci.c, emulates Renesas NEC USB 3.0
7 * Date: 2020-01-1; Author: Sai Pavan Boddu <sai.pavan.boddu@xilinx.com>
8 * PCI hooks are moved from XHCIState to XHCIPciState
9 *
10 * This library is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU Lesser General Public
12 * License as published by the Free Software Foundation; either
Chetan Pantbee41972020-10-23 12:23:32 +000013 * version 2.1 of the License, or (at your option) any later version.
Sai Pavan Boddu8ddab8d2020-09-24 19:50:52 +053014 *
15 * This library is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * Lesser General Public License for more details.
19 *
20 * You should have received a copy of the GNU Lesser General Public
21 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
22 */
23
24#ifndef HW_USB_HCD_XHCI_PCI_H
25#define HW_USB_HCD_XHCI_PCI_H
26
Markus Armbrusteredf5ca52022-12-22 11:03:28 +010027#include "hw/pci/pci_device.h"
Sai Pavan Boddu8ddab8d2020-09-24 19:50:52 +053028#include "hw/usb.h"
29#include "hcd-xhci.h"
30
31#define TYPE_XHCI_PCI "pci-xhci"
32#define XHCI_PCI(obj) \
33 OBJECT_CHECK(XHCIPciState, (obj), TYPE_XHCI_PCI)
34
35
36typedef struct XHCIPciState {
37 /*< private >*/
38 PCIDevice parent_obj;
39 /*< public >*/
40 XHCIState xhci;
41 OnOffAuto msi;
42 OnOffAuto msix;
43} XHCIPciState;
44
45#endif