mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-22 01:21:53 -06:00
hw/ide/ahci: Expose AHCIPCIState structure
In order to be able to QOM-embed a structure, we need its full definition. Move it from "ahci_internal.h" to the new "hw/ide/ahci-pci.h" header. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20240213081201.78951-3-philmd@linaro.org>
This commit is contained in:
parent
1a8e2f58c5
commit
d407be0877
7 changed files with 26 additions and 13 deletions
|
@ -47,7 +47,7 @@
|
||||||
#include "hw/display/ramfb.h"
|
#include "hw/display/ramfb.h"
|
||||||
#include "hw/firmware/smbios.h"
|
#include "hw/firmware/smbios.h"
|
||||||
#include "hw/ide/pci.h"
|
#include "hw/ide/pci.h"
|
||||||
#include "hw/ide/ahci.h"
|
#include "hw/ide/ahci-pci.h"
|
||||||
#include "hw/intc/ioapic.h"
|
#include "hw/intc/ioapic.h"
|
||||||
#include "hw/southbridge/ich9.h"
|
#include "hw/southbridge/ich9.h"
|
||||||
#include "hw/usb.h"
|
#include "hw/usb.h"
|
||||||
|
|
|
@ -36,6 +36,7 @@
|
||||||
#include "sysemu/dma.h"
|
#include "sysemu/dma.h"
|
||||||
#include "hw/ide/internal.h"
|
#include "hw/ide/internal.h"
|
||||||
#include "hw/ide/pci.h"
|
#include "hw/ide/pci.h"
|
||||||
|
#include "hw/ide/ahci-pci.h"
|
||||||
#include "ahci_internal.h"
|
#include "ahci_internal.h"
|
||||||
|
|
||||||
#include "trace.h"
|
#include "trace.h"
|
||||||
|
|
|
@ -324,14 +324,6 @@ struct AHCIDevice {
|
||||||
MemReentrancyGuard mem_reentrancy_guard;
|
MemReentrancyGuard mem_reentrancy_guard;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct AHCIPCIState {
|
|
||||||
/*< private >*/
|
|
||||||
PCIDevice parent_obj;
|
|
||||||
/*< public >*/
|
|
||||||
|
|
||||||
AHCIState ahci;
|
|
||||||
};
|
|
||||||
|
|
||||||
extern const VMStateDescription vmstate_ahci;
|
extern const VMStateDescription vmstate_ahci;
|
||||||
|
|
||||||
#define VMSTATE_AHCI(_field, _state) { \
|
#define VMSTATE_AHCI(_field, _state) { \
|
||||||
|
|
|
@ -69,6 +69,7 @@
|
||||||
#include "hw/isa/isa.h"
|
#include "hw/isa/isa.h"
|
||||||
#include "sysemu/dma.h"
|
#include "sysemu/dma.h"
|
||||||
#include "hw/ide/pci.h"
|
#include "hw/ide/pci.h"
|
||||||
|
#include "hw/ide/ahci-pci.h"
|
||||||
#include "ahci_internal.h"
|
#include "ahci_internal.h"
|
||||||
|
|
||||||
#define ICH9_MSI_CAP_OFFSET 0x80
|
#define ICH9_MSI_CAP_OFFSET 0x80
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
#include "hw/boards.h"
|
#include "hw/boards.h"
|
||||||
#include "hw/char/serial.h"
|
#include "hw/char/serial.h"
|
||||||
#include "hw/ide/pci.h"
|
#include "hw/ide/pci.h"
|
||||||
#include "hw/ide/ahci.h"
|
#include "hw/ide/ahci-pci.h"
|
||||||
#include "hw/loader.h"
|
#include "hw/loader.h"
|
||||||
#include "hw/loader-fit.h"
|
#include "hw/loader-fit.h"
|
||||||
#include "hw/mips/bootloader.h"
|
#include "hw/mips/bootloader.h"
|
||||||
|
|
22
include/hw/ide/ahci-pci.h
Normal file
22
include/hw/ide/ahci-pci.h
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
/*
|
||||||
|
* QEMU AHCI Emulation (PCI devices)
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
*/
|
||||||
|
#ifndef HW_IDE_AHCI_PCI_H
|
||||||
|
#define HW_IDE_AHCI_PCI_H
|
||||||
|
|
||||||
|
#include "qom/object.h"
|
||||||
|
#include "hw/ide/ahci.h"
|
||||||
|
#include "hw/pci/pci_device.h"
|
||||||
|
|
||||||
|
#define TYPE_ICH9_AHCI "ich9-ahci"
|
||||||
|
OBJECT_DECLARE_SIMPLE_TYPE(AHCIPCIState, ICH9_AHCI)
|
||||||
|
|
||||||
|
struct AHCIPCIState {
|
||||||
|
PCIDevice parent_obj;
|
||||||
|
|
||||||
|
AHCIState ahci;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
|
@ -52,9 +52,6 @@ typedef struct AHCIState {
|
||||||
} AHCIState;
|
} AHCIState;
|
||||||
|
|
||||||
|
|
||||||
#define TYPE_ICH9_AHCI "ich9-ahci"
|
|
||||||
OBJECT_DECLARE_SIMPLE_TYPE(AHCIPCIState, ICH9_AHCI)
|
|
||||||
|
|
||||||
int32_t ahci_get_num_ports(PCIDevice *dev);
|
int32_t ahci_get_num_ports(PCIDevice *dev);
|
||||||
void ahci_ide_create_devs(PCIDevice *dev, DriveInfo **hd);
|
void ahci_ide_create_devs(PCIDevice *dev, DriveInfo **hd);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue