2
0

qdev-properties-system.h 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. #ifndef HW_QDEV_PROPERTIES_SYSTEM_H
  2. #define HW_QDEV_PROPERTIES_SYSTEM_H
  3. #include "hw/qdev-properties.h"
  4. bool qdev_prop_sanitize_s390x_loadparm(uint8_t *loadparm, const char *str,
  5. Error **errp);
  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_zero_page_detection;
  13. extern const PropertyInfo qdev_prop_losttickpolicy;
  14. extern const PropertyInfo qdev_prop_blockdev_on_error;
  15. extern const PropertyInfo qdev_prop_bios_chs_trans;
  16. extern const PropertyInfo qdev_prop_fdc_drive_type;
  17. extern const PropertyInfo qdev_prop_drive;
  18. extern const PropertyInfo qdev_prop_drive_iothread;
  19. extern const PropertyInfo qdev_prop_netdev;
  20. extern const PropertyInfo qdev_prop_pci_devfn;
  21. extern const PropertyInfo qdev_prop_blocksize;
  22. extern const PropertyInfo qdev_prop_pci_host_devaddr;
  23. extern const PropertyInfo qdev_prop_uuid;
  24. extern const PropertyInfo qdev_prop_audiodev;
  25. extern const PropertyInfo qdev_prop_off_auto_pcibar;
  26. extern const PropertyInfo qdev_prop_pcie_link_speed;
  27. extern const PropertyInfo qdev_prop_pcie_link_width;
  28. extern const PropertyInfo qdev_prop_cpus390entitlement;
  29. extern const PropertyInfo qdev_prop_iothread_vq_mapping_list;
  30. extern const PropertyInfo qdev_prop_endian_mode;
  31. extern const PropertyInfo qdev_prop_vmapple_virtio_blk_variant;
  32. #define DEFINE_PROP_PCI_DEVFN(_n, _s, _f, _d) \
  33. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_pci_devfn, int32_t)
  34. #define DEFINE_PROP_CHR(_n, _s, _f) \
  35. DEFINE_PROP(_n, _s, _f, qdev_prop_chr, CharBackend)
  36. #define DEFINE_PROP_NETDEV(_n, _s, _f) \
  37. DEFINE_PROP(_n, _s, _f, qdev_prop_netdev, NICPeers)
  38. #define DEFINE_PROP_DRIVE(_n, _s, _f) \
  39. DEFINE_PROP(_n, _s, _f, qdev_prop_drive, BlockBackend *)
  40. #define DEFINE_PROP_DRIVE_IOTHREAD(_n, _s, _f) \
  41. DEFINE_PROP(_n, _s, _f, qdev_prop_drive_iothread, BlockBackend *)
  42. #define DEFINE_PROP_MACADDR(_n, _s, _f) \
  43. DEFINE_PROP(_n, _s, _f, qdev_prop_macaddr, MACAddr)
  44. #define DEFINE_PROP_RESERVED_REGION(_n, _s, _f) \
  45. DEFINE_PROP(_n, _s, _f, qdev_prop_reserved_region, ReservedRegion)
  46. #define DEFINE_PROP_MULTIFD_COMPRESSION(_n, _s, _f, _d) \
  47. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_multifd_compression, \
  48. MultiFDCompression)
  49. #define DEFINE_PROP_MIG_MODE(_n, _s, _f, _d) \
  50. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_mig_mode, \
  51. MigMode)
  52. #define DEFINE_PROP_GRANULE_MODE(_n, _s, _f, _d) \
  53. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_granule_mode, GranuleMode)
  54. #define DEFINE_PROP_ZERO_PAGE_DETECTION(_n, _s, _f, _d) \
  55. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_zero_page_detection, \
  56. ZeroPageDetection)
  57. #define DEFINE_PROP_LOSTTICKPOLICY(_n, _s, _f, _d) \
  58. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_losttickpolicy, \
  59. LostTickPolicy)
  60. #define DEFINE_PROP_BLOCKDEV_ON_ERROR(_n, _s, _f, _d) \
  61. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_blockdev_on_error, \
  62. BlockdevOnError)
  63. #define DEFINE_PROP_BIOS_CHS_TRANS(_n, _s, _f, _d) \
  64. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_bios_chs_trans, int)
  65. #define DEFINE_PROP_BLOCKSIZE(_n, _s, _f) \
  66. DEFINE_PROP_UNSIGNED(_n, _s, _f, 0, qdev_prop_blocksize, uint32_t)
  67. #define DEFINE_PROP_PCI_HOST_DEVADDR(_n, _s, _f) \
  68. DEFINE_PROP(_n, _s, _f, qdev_prop_pci_host_devaddr, PCIHostDeviceAddress)
  69. #define DEFINE_PROP_OFF_AUTO_PCIBAR(_n, _s, _f, _d) \
  70. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_off_auto_pcibar, \
  71. OffAutoPCIBAR)
  72. #define DEFINE_PROP_PCIE_LINK_SPEED(_n, _s, _f, _d) \
  73. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_pcie_link_speed, \
  74. PCIExpLinkSpeed)
  75. #define DEFINE_PROP_PCIE_LINK_WIDTH(_n, _s, _f, _d) \
  76. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_pcie_link_width, \
  77. PCIExpLinkWidth)
  78. #define DEFINE_PROP_UUID(_name, _state, _field) \
  79. DEFINE_PROP(_name, _state, _field, qdev_prop_uuid, QemuUUID, \
  80. .set_default = true)
  81. #define DEFINE_PROP_AUDIODEV(_n, _s, _f) \
  82. DEFINE_PROP(_n, _s, _f, qdev_prop_audiodev, QEMUSoundCard)
  83. #define DEFINE_PROP_UUID_NODEFAULT(_name, _state, _field) \
  84. DEFINE_PROP(_name, _state, _field, qdev_prop_uuid, QemuUUID)
  85. #define DEFINE_PROP_CPUS390ENTITLEMENT(_n, _s, _f, _d) \
  86. DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_cpus390entitlement, \
  87. S390CpuEntitlement)
  88. #define DEFINE_PROP_IOTHREAD_VQ_MAPPING_LIST(_name, _state, _field) \
  89. DEFINE_PROP(_name, _state, _field, qdev_prop_iothread_vq_mapping_list, \
  90. IOThreadVirtQueueMappingList *)
  91. #define DEFINE_PROP_ENDIAN(_name, _state, _field, _default) \
  92. DEFINE_PROP_UNSIGNED(_name, _state, _field, _default, \
  93. qdev_prop_endian_mode, EndianMode)
  94. #define DEFINE_PROP_ENDIAN_NODEFAULT(_name, _state, _field) \
  95. DEFINE_PROP_ENDIAN(_name, _state, _field, ENDIAN_MODE_UNSPECIFIED)
  96. #define DEFINE_PROP_VMAPPLE_VIRTIO_BLK_VARIANT(_name, _state, _fld, _default) \
  97. DEFINE_PROP_UNSIGNED(_name, _state, _fld, _default, \
  98. qdev_prop_vmapple_virtio_blk_variant, \
  99. VMAppleVirtioBlkVariant)
  100. #endif