qemu-patch-raspberry4/hw/arm/Kconfig
Peter Maydell 9516034d05 Some qemu updates for IPMI and I2C
Move some ADC file to where they belong and move some sensors to a
 sensor directory, since with new BMCs coming in lots of different
 sensors should be coming in.  Keep from cluttering things up.
 
 Add support for I2C PMBus devices.
 
 Replace the confusing and error-prone i2c_send_recv and i2c_transfer with
 specific send and receive functions.  Several errors have already been
 made with these, avoid any new errors.
 
 Fix the watchdog_expired field in the IPMI watchdog, it's not a bool,
 it's a u8.  After a vmstate transfer, the new value could be wrong.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE/Q1c5nzg9ZpmiCaGYfOMkJGb/4EFAmDoeGAACgkQYfOMkJGb
 /4HpkQ//YLAddy3Kqo5LbyI0BPxcx567htHH34XXp4Pz22DcAoPvZRyRlsGiAAcR
 HRmqjSXNBan+KhlA82coczHUami8C+9NQAfnABf7Mv4CQnvf9Hziy9YR0riTAgEk
 Xfc25eYYK5dzfOHVVbp2KJ2IWPo/sY3UqbIKu9MyYzriNpzIuT5NW1aGjIrhW7Js
 2feeIHxH4fEXzhkkgMKMJfXdxkYyD78mB3IfnpVCnoODq3fMZXtMskRDHWjdMEnT
 0u53zeQd5T0jElLZXlwDKAd9QpiPWVnfTJwND3fwWjSMIAVkd7kTqJbVtHpYJMWB
 amOR9qsw72r/WIOow4lLbSjS57GbyEjB344dtlrzHhhW68y9SGbtaSXWD/imkAfB
 NhLlMzNzsIb+dHZhAwdEgmg4Nz/1HZngiK4Awk2YFBVCn7G6BqAvpMwLGdYYr3Az
 P4EPs0aVdGYBbcN5XxAwkKEqESrzF+iF7iZvNTocdSJSCV+ebFNLlZWIq/aXS1TA
 IED1mBmyc/drWF+jA0D520uafT1m+zN4HhPvHpRyK65bqqiH2veDpK20kz0lwQe8
 e2ZeDVG2oVTMIQ+mmyu7kD9xgxjmapoHz64K1VkUwsnXE3jp9yqfa17B9vHOjqkq
 e/iaHiek8xeTWWyoShGk2zoAHBChkwSy/Y2JuZA6FXRnoU6kKsg=
 =8708
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/cminyard/tags/for-qemu-6.1-2' into staging

Some qemu updates for IPMI and I2C

Move some ADC file to where they belong and move some sensors to a
sensor directory, since with new BMCs coming in lots of different
sensors should be coming in.  Keep from cluttering things up.

Add support for I2C PMBus devices.

Replace the confusing and error-prone i2c_send_recv and i2c_transfer with
specific send and receive functions.  Several errors have already been
made with these, avoid any new errors.

Fix the watchdog_expired field in the IPMI watchdog, it's not a bool,
it's a u8.  After a vmstate transfer, the new value could be wrong.

# gpg: Signature made Fri 09 Jul 2021 17:25:04 BST
# gpg:                using RSA key FD0D5CE67CE0F59A6688268661F38C90919BFF81
# gpg: Good signature from "Corey Minyard <cminyard@mvista.com>" [unknown]
# gpg:                 aka "Corey Minyard <minyard@acm.org>" [unknown]
# gpg:                 aka "Corey Minyard <corey@minyard.net>" [unknown]
# gpg:                 aka "Corey Minyard <minyard@mvista.com>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: FD0D 5CE6 7CE0 F59A 6688  2686 61F3 8C90 919B FF81

* remotes/cminyard/tags/for-qemu-6.1-2: (24 commits)
  tests/qtest: add tests for MAX34451 device model
  hw/misc: add MAX34451 device
  tests/qtest: add tests for ADM1272 device model
  hw/misc: add ADM1272 device
  hw/i2c: add support for PMBus
  ipmi/sim: fix watchdog_expired data type error in IPMIBmcSim struct
  hw/i2c: Introduce i2c_start_recv() and i2c_start_send()
  hw/i2c: Extract i2c_do_start_transfer() from i2c_start_transfer()
  hw/i2c: Make i2c_start_transfer() direction argument a boolean
  hw/i2c: Rename i2c_set_slave_address() -> i2c_slave_set_address()
  hw/i2c: Remove confusing i2c_send_recv()
  hw/misc/auxbus: Replace i2c_send_recv() by i2c_recv() & i2c_send()
  hw/misc/auxbus: Replace 'is_write' boolean by its value
  hw/misc/auxbus: Explode READ_I2C / WRITE_I2C_MOT cases
  hw/misc/auxbus: Fix MOT/classic I2C mode
  hw/i2c/ppc4xx_i2c: Replace i2c_send_recv() by i2c_recv() & i2c_send()
  hw/i2c/ppc4xx_i2c: Add reference to datasheet
  hw/display/sm501: Replace i2c_send_recv() by i2c_recv() & i2c_send()
  hw/display/sm501: Simplify sm501_i2c_write() logic
  hw/input/lm832x: Define TYPE_LM8323 in public header
  ...

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2021-07-11 14:32:49 +01:00

544 lines
9.6 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 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_MEMORY_HOTPLUG
select ACPI_HW_REDUCED
select ACPI_NVDIMM
select ACPI_APEI
config CHEETAH
bool
select OMAP
select TSC210X
config CUBIEBOARD
bool
select ALLWINNER_A10
config DIGIC
bool
select PTIMER
select PFLASH_CFI02
config EXYNOS4
bool
select A9MPCORE
select I2C
select LAN9118
select PL310 # cache controller
select PTIMER
select SDHCI
select USB_EHCI_SYSBUS
select OR_IRQ
config HIGHBANK
bool
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
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
select PXA2XX
select PFLASH_CFI01
select SMC91C111
config MUSCA
bool
select ARMSSE
select PL011
select PL031
select SPLIT_IRQ
select UNIMP
config MUSICPAL
bool
select OR_IRQ
select BITBANG_I2C
select MARVELL_88W8618
select PTIMER
select PFLASH_CFI02
select SERIAL
select WM8750
config NETDUINO2
bool
select STM32F205_SOC
config NETDUINOPLUS2
bool
select STM32F405_SOC
config NSERIES
bool
select OMAP
select TMP105 # tempature 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
select PFLASH_CFI01
select SMC91C111
select PXA2XX
config TOSA
bool
select ZAURUS # scoop
select MICRODRIVE
select PXA2XX
select LED
config SPITZ
bool
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
select PFLASH_CFI01
select WM8750
select PL011 # UART
select PXA2XX
config REALVIEW
bool
imply PCI_DEVICES
imply PCI_TESTDEV
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 VERSATILE_I2C
select DS1338 # I2C RTC+NVRAM
select USB_OHCI
config SBSA_REF
bool
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_EHCI_SYSBUS
select WDT_SBSA
config SABRELITE
bool
select FSL_IMX6
select SSI_M25P80
config STELLARIS
bool
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_INPUT
select STELLARIS_ENET # ethernet
select UNIMP
config STM32VLDISCOVERY
bool
select STM32F100_SOC
config STRONGARM
bool
select PXA2XX
config COLLIE
bool
select PFLASH_CFI01
select ZAURUS # scoop
select STRONGARM
config SX1
bool
select OMAP
config VERSATILE
bool
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
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
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
select PTIMER
config ALLWINNER_A10
bool
select AHCI
select ALLWINNER_A10_PIT
select ALLWINNER_A10_PIC
select ALLWINNER_EMAC
select SERIAL
select UNIMP
config ALLWINNER_H3
bool
select ALLWINNER_A10_PIT
select ALLWINNER_SUN8I_EMAC
select SERIAL
select ARM_TIMER
select ARM_GIC
select UNIMP
select USB_OHCI
select USB_EHCI_SYSBUS
select SD
config RASPI
bool
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
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_ZYNQMP
select XLNX_ZDMA
config XLNX_VERSAL
bool
select ARM_GIC
select PL011
select CADENCE
select VIRTIO_MMIO
select UNIMP
select XLNX_ZDMA
select XLNX_ZYNQMP
config NPCM7XX
bool
select A9MPCORE
select ADM1272
select ARM_GIC
select AT24C # EEPROM
select MAX34451
select PL310 # cache controller
select PMBUS
select SERIAL
select SSI
select UNIMP
select PCA954X
config FSL_IMX25
bool
select IMX
select IMX_FEC
select IMX_I2C
select WDT_IMX2
select DS1338
config FSL_IMX31
bool
select SERIAL
select IMX
select IMX_I2C
select WDT_IMX2
select LAN9118
config FSL_IMX6
bool
select A9MPCORE
select IMX
select IMX_FEC
select IMX_I2C
select IMX_USBPHY
select WDT_IMX2
select SDHCI
config ASPEED_SOC
bool
select DS1338
select FTGMAC100
select I2C
select PCA9552
select SERIAL
select SMBUS_EEPROM
select PCA954X
select SSI
select SSI_M25P80
select TMP105
select TMP421
select EMC141X
select UNIMP
select LED
config MPS2
bool
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 VERSATILE_I2C
config FSL_IMX7
bool
imply PCI_DEVICES
imply TEST_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
select A15MPCORE
select IMX
select IMX_FEC
select IMX_I2C
select WDT_IMX2
select SDHCI
select UNIMP
config MICROBIT
bool
select NRF51_SOC
config NRF51_SOC
bool
select I2C
select ARM_V7M
select UNIMP
config EMCRAFT_SF2
bool
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