1*ffd9589eSMark Cave-Ayland /* 2*ffd9589eSMark Cave-Ayland * QEMU Simba PCI bridge 3*ffd9589eSMark Cave-Ayland * 4*ffd9589eSMark Cave-Ayland * Copyright (c) 2006 Fabrice Bellard 5*ffd9589eSMark Cave-Ayland * Copyright (c) 2012,2013 Artyom Tarasenko 6*ffd9589eSMark Cave-Ayland * Copyright (c) 2017 Mark Cave-Ayland 7*ffd9589eSMark Cave-Ayland * 8*ffd9589eSMark Cave-Ayland * Permission is hereby granted, free of charge, to any person obtaining a copy 9*ffd9589eSMark Cave-Ayland * of this software and associated documentation files (the "Software"), to deal 10*ffd9589eSMark Cave-Ayland * in the Software without restriction, including without limitation the rights 11*ffd9589eSMark Cave-Ayland * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12*ffd9589eSMark Cave-Ayland * copies of the Software, and to permit persons to whom the Software is 13*ffd9589eSMark Cave-Ayland * furnished to do so, subject to the following conditions: 14*ffd9589eSMark Cave-Ayland * 15*ffd9589eSMark Cave-Ayland * The above copyright notice and this permission notice shall be included in 16*ffd9589eSMark Cave-Ayland * all copies or substantial portions of the Software. 17*ffd9589eSMark Cave-Ayland * 18*ffd9589eSMark Cave-Ayland * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19*ffd9589eSMark Cave-Ayland * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20*ffd9589eSMark Cave-Ayland * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 21*ffd9589eSMark Cave-Ayland * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22*ffd9589eSMark Cave-Ayland * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23*ffd9589eSMark Cave-Ayland * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24*ffd9589eSMark Cave-Ayland * THE SOFTWARE. 25*ffd9589eSMark Cave-Ayland */ 26*ffd9589eSMark Cave-Ayland 27*ffd9589eSMark Cave-Ayland #include "qemu/osdep.h" 28*ffd9589eSMark Cave-Ayland #include "hw/pci/pci_bridge.h" 29*ffd9589eSMark Cave-Ayland 30*ffd9589eSMark Cave-Ayland 31*ffd9589eSMark Cave-Ayland typedef struct PBMPCIBridge { 32*ffd9589eSMark Cave-Ayland /*< private >*/ 33*ffd9589eSMark Cave-Ayland PCIBridge parent_obj; 34*ffd9589eSMark Cave-Ayland } PBMPCIBridge; 35*ffd9589eSMark Cave-Ayland 36*ffd9589eSMark Cave-Ayland #define TYPE_PBM_PCI_BRIDGE "pbm-bridge" 37*ffd9589eSMark Cave-Ayland #define PBM_PCI_BRIDGE(obj) \ 38*ffd9589eSMark Cave-Ayland OBJECT_CHECK(PBMPCIBridge, (obj), TYPE_PBM_PCI_BRIDGE) 39