xref: /qemu/include/hw/qdev-properties-system.h (revision 7dcb3c87)
1 #ifndef HW_QDEV_PROPERTIES_SYSTEM_H
2 #define HW_QDEV_PROPERTIES_SYSTEM_H
3 
4 #include "hw/qdev-properties.h"
5 
6 extern const PropertyInfo qdev_prop_chr;
7 extern const PropertyInfo qdev_prop_macaddr;
8 extern const PropertyInfo qdev_prop_reserved_region;
9 extern const PropertyInfo qdev_prop_multifd_compression;
10 extern const PropertyInfo qdev_prop_mig_mode;
11 extern const PropertyInfo qdev_prop_granule_mode;
12 extern const PropertyInfo qdev_prop_losttickpolicy;
13 extern const PropertyInfo qdev_prop_blockdev_on_error;
14 extern const PropertyInfo qdev_prop_bios_chs_trans;
15 extern const PropertyInfo qdev_prop_fdc_drive_type;
16 extern const PropertyInfo qdev_prop_drive;
17 extern const PropertyInfo qdev_prop_drive_iothread;
18 extern const PropertyInfo qdev_prop_netdev;
19 extern const PropertyInfo qdev_prop_pci_devfn;
20 extern const PropertyInfo qdev_prop_blocksize;
21 extern const PropertyInfo qdev_prop_pci_host_devaddr;
22 extern const PropertyInfo qdev_prop_uuid;
23 extern const PropertyInfo qdev_prop_audiodev;
24 extern const PropertyInfo qdev_prop_off_auto_pcibar;
25 extern const PropertyInfo qdev_prop_pcie_link_speed;
26 extern const PropertyInfo qdev_prop_pcie_link_width;
27 extern const PropertyInfo qdev_prop_cpus390entitlement;
28 extern const PropertyInfo qdev_prop_iothread_vq_mapping_list;
29 
30 #define DEFINE_PROP_PCI_DEVFN(_n, _s, _f, _d)                   \
31     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_pci_devfn, int32_t)
32 
33 #define DEFINE_PROP_CHR(_n, _s, _f)             \
34     DEFINE_PROP(_n, _s, _f, qdev_prop_chr, CharBackend)
35 #define DEFINE_PROP_NETDEV(_n, _s, _f)             \
36     DEFINE_PROP(_n, _s, _f, qdev_prop_netdev, NICPeers)
37 #define DEFINE_PROP_DRIVE(_n, _s, _f) \
38     DEFINE_PROP(_n, _s, _f, qdev_prop_drive, BlockBackend *)
39 #define DEFINE_PROP_DRIVE_IOTHREAD(_n, _s, _f) \
40     DEFINE_PROP(_n, _s, _f, qdev_prop_drive_iothread, BlockBackend *)
41 #define DEFINE_PROP_MACADDR(_n, _s, _f)         \
42     DEFINE_PROP(_n, _s, _f, qdev_prop_macaddr, MACAddr)
43 #define DEFINE_PROP_RESERVED_REGION(_n, _s, _f)         \
44     DEFINE_PROP(_n, _s, _f, qdev_prop_reserved_region, ReservedRegion)
45 #define DEFINE_PROP_MULTIFD_COMPRESSION(_n, _s, _f, _d) \
46     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_multifd_compression, \
47                        MultiFDCompression)
48 #define DEFINE_PROP_MIG_MODE(_n, _s, _f, _d) \
49     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_mig_mode, \
50                        MigMode)
51 #define DEFINE_PROP_GRANULE_MODE(_n, _s, _f, _d) \
52     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_granule_mode, GranuleMode)
53 #define DEFINE_PROP_LOSTTICKPOLICY(_n, _s, _f, _d) \
54     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_losttickpolicy, \
55                         LostTickPolicy)
56 #define DEFINE_PROP_BLOCKDEV_ON_ERROR(_n, _s, _f, _d) \
57     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_blockdev_on_error, \
58                         BlockdevOnError)
59 #define DEFINE_PROP_BIOS_CHS_TRANS(_n, _s, _f, _d) \
60     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_bios_chs_trans, int)
61 #define DEFINE_PROP_BLOCKSIZE(_n, _s, _f) \
62     DEFINE_PROP_UNSIGNED(_n, _s, _f, 0, qdev_prop_blocksize, uint32_t)
63 #define DEFINE_PROP_PCI_HOST_DEVADDR(_n, _s, _f) \
64     DEFINE_PROP(_n, _s, _f, qdev_prop_pci_host_devaddr, PCIHostDeviceAddress)
65 #define DEFINE_PROP_OFF_AUTO_PCIBAR(_n, _s, _f, _d) \
66     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_off_auto_pcibar, \
67                         OffAutoPCIBAR)
68 #define DEFINE_PROP_PCIE_LINK_SPEED(_n, _s, _f, _d) \
69     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_pcie_link_speed, \
70                         PCIExpLinkSpeed)
71 #define DEFINE_PROP_PCIE_LINK_WIDTH(_n, _s, _f, _d) \
72     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_pcie_link_width, \
73                         PCIExpLinkWidth)
74 
75 #define DEFINE_PROP_UUID(_name, _state, _field) \
76     DEFINE_PROP(_name, _state, _field, qdev_prop_uuid, QemuUUID, \
77                 .set_default = true)
78 
79 #define DEFINE_PROP_AUDIODEV(_n, _s, _f) \
80     DEFINE_PROP(_n, _s, _f, qdev_prop_audiodev, QEMUSoundCard)
81 
82 #define DEFINE_PROP_UUID_NODEFAULT(_name, _state, _field) \
83     DEFINE_PROP(_name, _state, _field, qdev_prop_uuid, QemuUUID)
84 
85 #define DEFINE_PROP_CPUS390ENTITLEMENT(_n, _s, _f, _d) \
86     DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_cpus390entitlement, \
87                        CpuS390Entitlement)
88 
89 #define DEFINE_PROP_IOTHREAD_VQ_MAPPING_LIST(_name, _state, _field) \
90     DEFINE_PROP(_name, _state, _field, qdev_prop_iothread_vq_mapping_list, \
91                 IOThreadVirtQueueMappingList *)
92 
93 #endif
94