qemu/hw/arm/Kconfig
Stefan Hajnoczi ed1d873caa Misc hardware patch queue
HW emulation:
 - PMBus fixes and tests (Titus)
 - IDE fixes and tests (Fiona)
 - New ADM1266 sensor (Titus)
 - Better error propagation in PCI-ISA i82378 (Philippe)
 - Declare SD model QOM types using DEFINE_TYPES macro (Philippe)
 
 Topology:
 - Fix CPUState::nr_cores calculation (Zhuocheng Ding and Zhao Liu)
 
 Monitor:
 - Synchronize CPU state in 'info lapic' (Dongli Zhang)
 
 QOM:
 - Have 'cpu-qom.h' target-agnostic (Philippe)
 - Move ArchCPUClass definition to each target's cpu.h (Philippe)
 - Call object_class_is_abstract once in cpu_class_by_name (Philippe)
 
 UI:
 - Use correct key names in titles on MacOS / SDL2 (Adrian)
 
 MIPS:
 - Fix MSA BZ/BNZ and TX79 LQ/SQ opcodes (Philippe)
 
 Nios2:
 - Create IRQs *after* vCPU is realized (Philippe)
 
 PPC:
 - Restrict KVM objects to system emulation (Philippe)
 - Move target-specific definitions out of 'cpu-qom.h' (Philippe)
 
 S390X:
 - Make hw/s390x/css.h and hw/s390x/sclp.h headers target agnostic (Philippe)
 
 X86:
 - HVF & KVM cleanups (Philippe)
 
 Various targets:
 - Use env_archcpu() to optimize (Philippe)
 
 Misc:
 - Few global variable shadowing removed (Philippe)
 - Introduce cpu_exec_reset_hold and factor tcg_cpu_reset_hold out (Philippe)
 - Remove few more 'softmmu' mentions (Philippe)
 - Fix and cleanup in vl.c (Akihiko & Marc-André)
 - Resource leak fix in dump (Zongmin Zhou)
 - MAINTAINERS updates (Thomas, Daniel)
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEE+qvnXhKRciHc/Wuy4+MsLN6twN4FAmVKKmEACgkQ4+MsLN6t
 wN4xHQ//X/enH4C7K3VP/tSinDiwmXN2o61L9rjqSDQkBaCtktZx4c8qKSDL7V4S
 vwzmvvBn3biMXQwZNVJo9d0oz2qoaF9tI6Ao0XDHAan9ziagfG9YMqWhkCfj077Q
 jLdCqkUuMJBvQgXGB1a6UgCme8PQx7h0oqjbCNfB0ZBls24b5DiEjO87LE4OTbTi
 zKRhYEpZpGwIVcy+1dAsbaBpGFP06sr1doB9Wz4c06eSx7t0kFSPk6U4CyOPrGXh
 ynyCxPwngxIXmarY8gqPs3SBs7oXsH8Q/ZOHr1LbuXhwSuw/0zBQU9aF7Ir8RPan
 DB79JjPrtxTAhICKredWT79v9M18D2/1MpONgg4vtx5K2FzGYoAJULCHyfkHMRSM
 L6/H0ZQPHvf7w72k9EcSQIhd0wPlMqRmfy37/8xcLiw1h4l/USx48QeKaeFWeSEu
 DgwSk+R61HbrKvQz/U0tF98zUEyBaQXNrKmyzht0YE4peAtpbPNBeRHkd0GMae/Z
 HOmkt8QlFQ0T14qSK7mSHaSJTUzRvFGD01cbuCDxVsyCWWsesEikXBACZLG5RCRY
 Rn1WeX1H9eE3kKi9iueLnhzcF9yM5XqFE3f6RnDzY8nkg91lsTMSQgFcIpv6uGyp
 3WOTNSC9SoFyI3x8pCWiKOGytPUb8xk+PnOA85wYvVmT+7j6wus=
 =OVdQ
 -----END PGP SIGNATURE-----

Merge tag 'misc-cpus-20231107' of https://github.com/philmd/qemu into staging

Misc hardware patch queue

HW emulation:
- PMBus fixes and tests (Titus)
- IDE fixes and tests (Fiona)
- New ADM1266 sensor (Titus)
- Better error propagation in PCI-ISA i82378 (Philippe)
- Declare SD model QOM types using DEFINE_TYPES macro (Philippe)

Topology:
- Fix CPUState::nr_cores calculation (Zhuocheng Ding and Zhao Liu)

Monitor:
- Synchronize CPU state in 'info lapic' (Dongli Zhang)

QOM:
- Have 'cpu-qom.h' target-agnostic (Philippe)
- Move ArchCPUClass definition to each target's cpu.h (Philippe)
- Call object_class_is_abstract once in cpu_class_by_name (Philippe)

UI:
- Use correct key names in titles on MacOS / SDL2 (Adrian)

MIPS:
- Fix MSA BZ/BNZ and TX79 LQ/SQ opcodes (Philippe)

Nios2:
- Create IRQs *after* vCPU is realized (Philippe)

PPC:
- Restrict KVM objects to system emulation (Philippe)
- Move target-specific definitions out of 'cpu-qom.h' (Philippe)

S390X:
- Make hw/s390x/css.h and hw/s390x/sclp.h headers target agnostic (Philippe)

X86:
- HVF & KVM cleanups (Philippe)

Various targets:
- Use env_archcpu() to optimize (Philippe)

Misc:
- Few global variable shadowing removed (Philippe)
- Introduce cpu_exec_reset_hold and factor tcg_cpu_reset_hold out (Philippe)
- Remove few more 'softmmu' mentions (Philippe)
- Fix and cleanup in vl.c (Akihiko & Marc-André)
- Resource leak fix in dump (Zongmin Zhou)
- MAINTAINERS updates (Thomas, Daniel)

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEE+qvnXhKRciHc/Wuy4+MsLN6twN4FAmVKKmEACgkQ4+MsLN6t
# wN4xHQ//X/enH4C7K3VP/tSinDiwmXN2o61L9rjqSDQkBaCtktZx4c8qKSDL7V4S
# vwzmvvBn3biMXQwZNVJo9d0oz2qoaF9tI6Ao0XDHAan9ziagfG9YMqWhkCfj077Q
# jLdCqkUuMJBvQgXGB1a6UgCme8PQx7h0oqjbCNfB0ZBls24b5DiEjO87LE4OTbTi
# zKRhYEpZpGwIVcy+1dAsbaBpGFP06sr1doB9Wz4c06eSx7t0kFSPk6U4CyOPrGXh
# ynyCxPwngxIXmarY8gqPs3SBs7oXsH8Q/ZOHr1LbuXhwSuw/0zBQU9aF7Ir8RPan
# DB79JjPrtxTAhICKredWT79v9M18D2/1MpONgg4vtx5K2FzGYoAJULCHyfkHMRSM
# L6/H0ZQPHvf7w72k9EcSQIhd0wPlMqRmfy37/8xcLiw1h4l/USx48QeKaeFWeSEu
# DgwSk+R61HbrKvQz/U0tF98zUEyBaQXNrKmyzht0YE4peAtpbPNBeRHkd0GMae/Z
# HOmkt8QlFQ0T14qSK7mSHaSJTUzRvFGD01cbuCDxVsyCWWsesEikXBACZLG5RCRY
# Rn1WeX1H9eE3kKi9iueLnhzcF9yM5XqFE3f6RnDzY8nkg91lsTMSQgFcIpv6uGyp
# 3WOTNSC9SoFyI3x8pCWiKOGytPUb8xk+PnOA85wYvVmT+7j6wus=
# =OVdQ
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 07 Nov 2023 20:15:29 HKT
# gpg:                using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) <f4bug@amsat.org>" [full]
# Primary key fingerprint: FAAB E75E 1291 7221 DCFD  6BB2 E3E3 2C2C DEAD C0DE

* tag 'misc-cpus-20231107' of https://github.com/philmd/qemu: (75 commits)
  dump: Add close fd on error return to avoid resource leak
  ui/sdl2: use correct key names in win title on mac
  MAINTAINERS: Add more guest-agent related files to the corresponding section
  MAINTAINERS: Add include/hw/xtensa/mx_pic.h to the XTFPGA machine section
  MAINTAINERS: update libvirt devel mailing list address
  MAINTAINERS: Add the CAN documentation file to the CAN section
  MAINTAINERS: Add include/hw/timer/tmu012.h to the SH4 R2D section
  hw/sd: Declare QOM types using DEFINE_TYPES() macro
  hw/i2c: pmbus: reset page register for out of range reads
  hw/i2c: pmbus: immediately clear faults on request
  tests/qtest: add tests for ADM1266
  hw/sensor: add ADM1266 device model
  hw/i2c: pmbus: add VCAP register
  hw/i2c: pmbus: add fan support
  hw/i2c: pmbus: add vout mode bitfields
  hw/i2c: pmbus add support for block receive
  tests/qtest: ahci-test: add test exposing reset issue with pending callback
  hw/ide: reset: cancel async DMA operation before resetting state
  hw/cpu: Update the comments of nr_cores and nr_dies
  system/cpus: Fix CPUState.nr_cores' calculation
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2023-11-08 08:32:26 +08:00

682 lines
12 KiB
Plaintext

config ARM_VIRT
bool
imply PCI_DEVICES
imply TEST_DEVICES
imply VFIO_AMD_XGBE
imply VFIO_PLATFORM
imply VFIO_XGMAC
imply TPM_TIS_SYSBUS
imply TPM_TIS_I2C
imply NVDIMM
select ARM_GIC
select ACPI
select ARM_SMMUV3
select GPIO_KEY
select FW_CFG_DMA
select PCI_EXPRESS
select PCI_EXPRESS_GENERIC_BRIDGE
select PFLASH_CFI01
select PL011 # UART
select PL031 # RTC
select PL061 # GPIO
select GPIO_PWR
select PLATFORM_BUS
select SMBIOS
select VIRTIO_MMIO
select ACPI_PCI
select MEM_DEVICE
select DIMM
select ACPI_HW_REDUCED
select ACPI_APEI
select ACPI_VIOT
select VIRTIO_MEM_SUPPORTED
select ACPI_CXL
select ACPI_HMAT
config CHEETAH
bool
default y
depends on TCG && ARM
select OMAP
select TSC210X
config CUBIEBOARD
bool
default y
depends on TCG && ARM
select ALLWINNER_A10
config DIGIC
bool
default y
depends on TCG && ARM
select PTIMER
select PFLASH_CFI02
config EXYNOS4
bool
default y
depends on TCG && ARM
imply I2C_DEVICES
select A9MPCORE
select I2C
select LAN9118
select PL310 # cache controller
select PTIMER
select SDHCI
select USB_EHCI_SYSBUS
select OR_IRQ
config HIGHBANK
bool
default y
depends on TCG && ARM
select A9MPCORE
select A15MPCORE
select AHCI
select ARM_TIMER # sp804
select ARM_V7M
select PL011 # UART
select PL022 # SPI
select PL031 # RTC
select PL061 # GPIO
select PL310 # cache controller
select XGMAC # ethernet
config INTEGRATOR
bool
default y
depends on TCG && ARM
select ARM_TIMER
select INTEGRATOR_DEBUG
select PL011 # UART
select PL031 # RTC
select PL041 # audio
select PL050 # keyboard/mouse
select PL110 # pl111 LCD controller
select PL181 # display
select SMC91C111
config MAINSTONE
bool
default y
depends on TCG && ARM
select PXA2XX
select PFLASH_CFI01
select SMC91C111
config MUSCA
bool
default y
depends on TCG && ARM
select ARMSSE
select PL011
select PL031
select SPLIT_IRQ
select UNIMP
config MARVELL_88W8618
bool
config MUSICPAL
bool
default y
depends on TCG && ARM
select OR_IRQ
select BITBANG_I2C
select MARVELL_88W8618
select PTIMER
select PFLASH_CFI02
select SERIAL
select WM8750
config NETDUINO2
bool
default y
depends on TCG && ARM
select STM32F205_SOC
config NETDUINOPLUS2
bool
default y
depends on TCG && ARM
select STM32F405_SOC
config OLIMEX_STM32_H405
bool
default y
depends on TCG && ARM
select STM32F405_SOC
config NSERIES
bool
default y
depends on TCG && ARM
select OMAP
select TMP105 # temperature sensor
select BLIZZARD # LCD/TV controller
select ONENAND
select TSC210X # touchscreen/sensors/audio
select TSC2005 # touchscreen/sensors/keypad
select LM832X # GPIO keyboard chip
select TWL92230 # energy-management
select TUSB6010
config OMAP
bool
select FRAMEBUFFER
select I2C
select ECC
select NAND
select PFLASH_CFI01
select SD
select SERIAL
config PXA2XX
bool
select FRAMEBUFFER
select I2C
select SERIAL
select SD
select SSI
select USB_OHCI
select PCMCIA
config GUMSTIX
bool
default y
depends on TCG && ARM
select PFLASH_CFI01
select SMC91C111
select PXA2XX
config TOSA
bool
default y
depends on TCG && ARM
select ZAURUS # scoop
select MICRODRIVE
select PXA2XX
select LED
config SPITZ
bool
default y
depends on TCG && ARM
select ADS7846 # touch-screen controller
select MAX111X # A/D converter
select WM8750 # audio codec
select MAX7310 # GPIO expander
select ZAURUS # scoop
select NAND # memory
select ECC # Error-correcting for NAND
select MICRODRIVE
select PXA2XX
config Z2
bool
default y
depends on TCG && ARM
select PFLASH_CFI01
select WM8750
select PL011 # UART
select PXA2XX
config REALVIEW
bool
default y
depends on TCG && ARM
imply PCI_DEVICES
imply PCI_TESTDEV
imply I2C_DEVICES
select SMC91C111
select LAN9118
select A9MPCORE
select A15MPCORE
select ARM11MPCORE
select ARM_TIMER
select VERSATILE_PCI
select WM8750 # audio codec
select LSI_SCSI_PCI
select PCI
select PL011 # UART
select PL031 # RTC
select PL041 # audio codec
select PL050 # keyboard/mouse
select PL061 # GPIO
select PL080 # DMA controller
select PL110
select PL181 # display
select PL310 # cache controller
select ARM_SBCON_I2C
select DS1338 # I2C RTC+NVRAM
select USB_OHCI
config SBSA_REF
bool
default y
depends on TCG && AARCH64
imply PCI_DEVICES
select AHCI
select ARM_SMMUV3
select GPIO_KEY
select PCI_EXPRESS
select PCI_EXPRESS_GENERIC_BRIDGE
select PFLASH_CFI01
select PL011 # UART
select PL031 # RTC
select PL061 # GPIO
select USB_XHCI_SYSBUS
select WDT_SBSA
select BOCHS_DISPLAY
config SABRELITE
bool
default y
depends on TCG && ARM
select FSL_IMX6
select SSI_M25P80
config STELLARIS
bool
default y
depends on TCG && ARM
imply I2C_DEVICES
select ARM_V7M
select CMSDK_APB_WATCHDOG
select I2C
select PL011 # UART
select PL022 # SPI
select PL061 # GPIO
select SSD0303 # OLED display
select SSD0323 # OLED display
select SSI_SD
select STELLARIS_GAMEPAD
select STELLARIS_ENET # ethernet
select STELLARIS_GPTM # general purpose timer module
select UNIMP
config STM32VLDISCOVERY
bool
default y
depends on TCG && ARM
select STM32F100_SOC
config STRONGARM
bool
select PXA2XX
config COLLIE
bool
default y
depends on TCG && ARM
select PFLASH_CFI01
select ZAURUS # scoop
select STRONGARM
config SX1
bool
default y
depends on TCG && ARM
select OMAP
config VERSATILE
bool
default y
depends on TCG && ARM
select ARM_TIMER # sp804
select PFLASH_CFI01
select LSI_SCSI_PCI
select PL050 # keyboard/mouse
select PL080 # DMA controller
select PL190 # Vector PIC
select REALVIEW
select USB_OHCI
config VEXPRESS
bool
default y
depends on TCG && ARM
select A9MPCORE
select A15MPCORE
select ARM_MPTIMER
select ARM_TIMER # sp804
select LAN9118
select PFLASH_CFI01
select PL011 # UART
select PL041 # audio codec
select PL181 # display
select REALVIEW
select SII9022
select VIRTIO_MMIO
config ZYNQ
bool
default y
depends on TCG && ARM
select A9MPCORE
select CADENCE # UART
select PFLASH_CFI02
select PL330
select SDHCI
select SSI_M25P80
select USB_EHCI_SYSBUS
select XILINX # UART
select XILINX_AXI
select XILINX_SPI
select XILINX_SPIPS
select ZYNQ_DEVCFG
config ARM_V7M
bool
# currently v7M must be included in a TCG build due to translate.c
default y
depends on TCG && ARM
select PTIMER
config ALLWINNER_A10
bool
select AHCI
select ALLWINNER_A10_PIT
select ALLWINNER_A10_PIC
select ALLWINNER_A10_CCM
select ALLWINNER_A10_DRAMC
select ALLWINNER_WDT
select ALLWINNER_EMAC
select ALLWINNER_I2C
select AXP2XX_PMU
select SERIAL
select UNIMP
config ALLWINNER_H3
bool
default y
depends on TCG && ARM
select ALLWINNER_A10_PIT
select ALLWINNER_SUN8I_EMAC
select ALLWINNER_I2C
select ALLWINNER_WDT
select SERIAL
select ARM_TIMER
select ARM_GIC
select UNIMP
select USB_OHCI
select USB_EHCI_SYSBUS
select SD
config ALLWINNER_R40
bool
default y if TCG && ARM
select ALLWINNER_SRAMC
select ALLWINNER_A10_PIT
select AXP2XX_PMU
select SERIAL
select ARM_TIMER
select ARM_GIC
select UNIMP
select SD
config RASPI
bool
default y
depends on TCG && ARM
select FRAMEBUFFER
select PL011 # UART
select SDHCI
select USB_DWC2
config STM32F100_SOC
bool
select ARM_V7M
select STM32F2XX_USART
select STM32F2XX_SPI
config STM32F205_SOC
bool
select ARM_V7M
select OR_IRQ
select STM32F2XX_TIMER
select STM32F2XX_USART
select STM32F2XX_SYSCFG
select STM32F2XX_ADC
select STM32F2XX_SPI
config STM32F405_SOC
bool
select ARM_V7M
select OR_IRQ
select STM32F4XX_SYSCFG
select STM32F4XX_EXTI
config XLNX_ZYNQMP_ARM
bool
default y if PIXMAN
depends on TCG && AARCH64
select AHCI
select ARM_GIC
select CADENCE
select DDC
select DPCD
select SDHCI
select SSI
select SSI_M25P80
select XILINX_AXI
select XILINX_SPIPS
select XLNX_CSU_DMA
select XLNX_DISPLAYPORT
select XLNX_ZYNQMP
select XLNX_ZDMA
select USB_DWC3
config XLNX_VERSAL
bool
default y
depends on TCG && AARCH64
select ARM_GIC
select PL011
select CADENCE
select VIRTIO_MMIO
select UNIMP
select XLNX_ZDMA
select XLNX_ZYNQMP
select OR_IRQ
select XLNX_BBRAM
select XLNX_EFUSE_VERSAL
select XLNX_USB_SUBSYS
select XLNX_VERSAL_TRNG
select XLNX_CSU_DMA
config NPCM7XX
bool
default y
depends on TCG && ARM
select A9MPCORE
select ADM1266
select ADM1272
select ARM_GIC
select SMBUS
select AT24C # EEPROM
select MAX34451
select ISL_PMBUS_VR
select PL310 # cache controller
select PMBUS
select SERIAL
select SSI
select UNIMP
select PCA954X
config FSL_IMX25
bool
default y
depends on TCG && ARM
imply I2C_DEVICES
select IMX
select IMX_FEC
select IMX_I2C
select WDT_IMX2
select SDHCI
config FSL_IMX31
bool
default y
depends on TCG && ARM
imply I2C_DEVICES
select SERIAL
select IMX
select IMX_I2C
select WDT_IMX2
select LAN9118
config FSL_IMX6
bool
imply I2C_DEVICES
select A9MPCORE
select IMX
select IMX_FEC
select IMX_I2C
select IMX_USBPHY
select WDT_IMX2
select SDHCI
config ASPEED_SOC
bool
default y
depends on TCG && ARM
select DS1338
select FTGMAC100
select I2C
select DPS310
select PCA9552
select SERIAL
select SMBUS_EEPROM
select PCA954X
select SSI
select SSI_M25P80
select TMP105
select TMP421
select EMC141X
select UNIMP
select LED
select PMBUS
select MAX31785
config MPS2
bool
default y
depends on TCG && ARM
imply I2C_DEVICES
select ARMSSE
select LAN9118
select MPS2_FPGAIO
select MPS2_SCC
select OR_IRQ
select PL022 # SPI
select PL080 # DMA controller
select SPLIT_IRQ
select UNIMP
select CMSDK_APB_WATCHDOG
select ARM_SBCON_I2C
config FSL_IMX7
bool
default y
depends on TCG && ARM
imply PCI_DEVICES
imply TEST_DEVICES
imply I2C_DEVICES
select A15MPCORE
select PCI
select IMX
select IMX_FEC
select IMX_I2C
select WDT_IMX2
select PCI_EXPRESS_DESIGNWARE
select SDHCI
select UNIMP
config ARM_SMMUV3
bool
config FSL_IMX6UL
bool
default y
depends on TCG && ARM
imply I2C_DEVICES
select A15MPCORE
select IMX
select IMX_FEC
select IMX_I2C
select WDT_IMX2
select SDHCI
select UNIMP
config MICROBIT
bool
default y
depends on TCG && ARM
select NRF51_SOC
config NRF51_SOC
bool
imply I2C_DEVICES
select I2C
select ARM_V7M
select UNIMP
config EMCRAFT_SF2
bool
default y
depends on TCG && ARM
select MSF2
select SSI_M25P80
config MSF2
bool
select ARM_V7M
select PTIMER
select SERIAL
select SSI
select UNIMP
config ZAURUS
bool
select NAND
select ECC
config A9MPCORE
bool
select A9_GTIMER
select A9SCU # snoop control unit
select ARM_GIC
select ARM_MPTIMER
config A15MPCORE
bool
select ARM_GIC
config ARM11MPCORE
bool
select ARM11SCU
config ARMSSE
bool
select ARM_V7M
select ARMSSE_CPU_PWRCTRL
select ARMSSE_CPUID
select ARMSSE_MHU
select CMSDK_APB_TIMER
select CMSDK_APB_DUALTIMER
select CMSDK_APB_UART
select CMSDK_APB_WATCHDOG
select IOTKIT_SECCTL
select IOTKIT_SYSCTL
select IOTKIT_SYSINFO
select OR_IRQ
select SPLIT_IRQ
select TZ_MPC
select TZ_MSC
select TZ_PPC
select UNIMP
select SSE_COUNTER
select SSE_TIMER