xref: /qemu/hw/arm/Kconfig (revision 6ff5da16000f908140723e164d33a0b51a6c4162)
1config ARM_VIRT
2    bool
3    default y
4    depends on ARM
5    depends on TCG || KVM || HVF
6    imply PCI_DEVICES
7    imply TEST_DEVICES
8    imply VFIO_AMD_XGBE
9    imply VFIO_PLATFORM
10    imply VFIO_XGMAC
11    imply TPM_TIS_SYSBUS
12    imply TPM_TIS_I2C
13    imply NVDIMM
14    imply IOMMUFD
15    select ARM_GIC
16    select ACPI
17    select ARM_SMMUV3
18    select GPIO_KEY
19    select DEVICE_TREE
20    select FW_CFG_DMA
21    select PCI_EXPRESS
22    select PCI_EXPRESS_GENERIC_BRIDGE
23    select PFLASH_CFI01
24    select PL011 if !HAVE_RUST # UART
25    select X_PL011_RUST if HAVE_RUST # UART
26    select PL031 # RTC
27    select PL061 # GPIO
28    select GPIO_PWR
29    select PLATFORM_BUS
30    select SMBIOS
31    select VIRTIO_MMIO
32    select ACPI_PCI
33    select MEM_DEVICE
34    select DIMM
35    select ACPI_HW_REDUCED
36    select ACPI_APEI
37    select ACPI_VIOT
38    select VIRTIO_MEM_SUPPORTED
39    select ACPI_CXL
40    select ACPI_HMAT
41
42config CUBIEBOARD
43    bool
44    default y
45    depends on TCG && ARM
46    select ALLWINNER_A10
47
48config DIGIC
49    bool
50    default y
51    depends on TCG && ARM
52    select PTIMER
53    select PFLASH_CFI02
54
55config EXYNOS4
56    bool
57    default y
58    depends on TCG && ARM
59    imply I2C_DEVICES
60    select A9MPCORE
61    select I2C
62    select LAN9118
63    select PL310 # cache controller
64    select PTIMER
65    select SDHCI
66    select USB_EHCI_SYSBUS
67    select OR_IRQ
68
69config HIGHBANK
70    bool
71    default y
72    depends on TCG && ARM
73    select A9MPCORE
74    select A15MPCORE
75    select AHCI_SYSBUS
76    select ARM_TIMER # sp804
77    select ARM_V7M
78    select PL011 if !HAVE_RUST # UART
79    select X_PL011_RUST if HAVE_RUST # UART
80    select PL022 # SPI
81    select PL031 # RTC
82    select PL061 # GPIO
83    select PL310 # cache controller
84    select XGMAC # ethernet
85
86config INTEGRATOR
87    bool
88    default y
89    depends on TCG && ARM
90    select ARM_TIMER
91    select INTEGRATOR_DEBUG
92    select PL011 if !HAVE_RUST # UART
93    select X_PL011_RUST if HAVE_RUST # UART
94    select PL031 # RTC
95    select PL041 # audio
96    select PL050 # keyboard/mouse
97    select PL110 # pl111 LCD controller
98    select PL181 # display
99    select SMC91C111
100
101config MPS3R
102    bool
103    default y
104    depends on TCG && ARM
105
106config MUSCA
107    bool
108    default y
109    depends on TCG && ARM
110    select ARMSSE
111    select PL011 if !HAVE_RUST # UART
112    select X_PL011_RUST if HAVE_RUST # UART
113    select PL031
114    select SPLIT_IRQ
115    select UNIMP
116
117config MARVELL_88W8618
118    bool
119
120config MUSICPAL
121    bool
122    default y
123    depends on TCG && ARM
124    select OR_IRQ
125    select BITBANG_I2C
126    select MARVELL_88W8618
127    select PTIMER
128    select PFLASH_CFI02
129    select SERIAL_MM
130    select WM8750
131
132config NETDUINO2
133    bool
134    default y
135    depends on TCG && ARM
136    select STM32F205_SOC
137
138config NETDUINOPLUS2
139    bool
140    default y
141    depends on TCG && ARM
142    select STM32F405_SOC
143
144config OLIMEX_STM32_H405
145    bool
146    default y
147    depends on TCG && ARM
148    select STM32F405_SOC
149
150config OMAP
151    bool
152    select FRAMEBUFFER
153    select I2C
154    select NAND
155    select PFLASH_CFI01
156    select SD
157    select SERIAL_MM
158
159config REALVIEW
160    bool
161    default y
162    depends on TCG && ARM
163    imply PCI_DEVICES
164    imply PCI_TESTDEV
165    imply I2C_DEVICES
166    select SMC91C111
167    select LAN9118
168    select A9MPCORE
169    select A15MPCORE
170    select ARM11MPCORE
171    select ARM_TIMER
172    select VERSATILE_PCI
173    select WM8750 # audio codec
174    select LSI_SCSI_PCI
175    select PCI
176    select PL011 if !HAVE_RUST # UART
177    select X_PL011_RUST if HAVE_RUST # UART
178    select PL031  # RTC
179    select PL041  # audio codec
180    select PL050  # keyboard/mouse
181    select PL061  # GPIO
182    select PL080  # DMA controller
183    select PL110
184    select PL181  # display
185    select PL310  # cache controller
186    select ARM_SBCON_I2C
187    select DS1338 # I2C RTC+NVRAM
188    select USB_OHCI_SYSBUS
189
190config SBSA_REF
191    bool
192    default y
193    depends on TCG && AARCH64
194    imply PCI_DEVICES
195    select DEVICE_TREE
196    select AHCI_SYSBUS
197    select ARM_SMMUV3
198    select GPIO_KEY
199    select PCI_EXPRESS
200    select PCI_EXPRESS_GENERIC_BRIDGE
201    select PFLASH_CFI01
202    select PL011 if !HAVE_RUST # UART
203    select X_PL011_RUST if HAVE_RUST # UART
204    select PL031 # RTC
205    select PL061 # GPIO
206    select USB_XHCI_SYSBUS
207    select WDT_SBSA
208    select BOCHS_DISPLAY
209    select IDE_BUS
210    select IDE_DEV
211
212config SABRELITE
213    bool
214    default y
215    depends on TCG && ARM
216    select FSL_IMX6
217    select SSI_M25P80
218
219config STELLARIS
220    bool
221    default y
222    depends on TCG && ARM
223    imply I2C_DEVICES
224    select ARM_V7M
225    select CMSDK_APB_WATCHDOG
226    select I2C
227    select PL011 if !HAVE_RUST # UART
228    select X_PL011_RUST if HAVE_RUST # UART
229    select PL022 # SPI
230    select PL061 # GPIO
231    select SSD0303 # OLED display
232    select SSD0323 # OLED display
233    select SSI_SD
234    select STELLARIS_GAMEPAD
235    select STELLARIS_ENET # ethernet
236    select STELLARIS_GPTM # general purpose timer module
237    select UNIMP
238
239config STM32VLDISCOVERY
240    bool
241    default y
242    depends on TCG && ARM
243    select STM32F100_SOC
244
245config STRONGARM
246    bool
247    select PXA2XX_TIMER
248    select SSI
249
250config COLLIE
251    bool
252    default y
253    depends on TCG && ARM
254    select PFLASH_CFI01
255    select ZAURUS_SCOOP
256    select STRONGARM
257
258config SX1
259    bool
260    default y
261    depends on TCG && ARM
262    select OMAP
263
264config VERSATILE
265    bool
266    default y
267    depends on TCG && ARM
268    select ARM_TIMER # sp804
269    select PFLASH_CFI01
270    select LSI_SCSI_PCI
271    select PL050  # keyboard/mouse
272    select PL080  # DMA controller
273    select PL190  # Vector PIC
274    select REALVIEW
275    select USB_OHCI_SYSBUS
276
277config VEXPRESS
278    bool
279    default y
280    depends on TCG && ARM
281    select DEVICE_TREE
282    select A9MPCORE
283    select A15MPCORE
284    select ARM_MPTIMER
285    select ARM_TIMER # sp804
286    select LAN9118
287    select PFLASH_CFI01
288    select PL011 if !HAVE_RUST # UART
289    select X_PL011_RUST if HAVE_RUST # UART
290    select PL041 # audio codec
291    select PL181  # display
292    select REALVIEW
293    select SII9022
294    select VIRTIO_MMIO
295
296config ZYNQ
297    bool
298    default y
299    depends on TCG && ARM
300    select A9MPCORE
301    select CADENCE # UART
302    select PFLASH_CFI02
303    select PL310 # cache controller
304    select PL330
305    select SDHCI
306    select SSI_M25P80
307    select USB_CHIPIDEA
308    select XILINX # UART
309    select XILINX_AXI
310    select XILINX_SPI
311    select XILINX_SPIPS
312    select ZYNQ_DEVCFG
313
314config ARM_V7M
315    bool
316    # currently v7M must be included in a TCG build due to translate.c
317    default y
318    depends on TCG && ARM
319    select PTIMER
320
321config ALLWINNER_A10
322    bool
323    select AHCI_SYSBUS
324    select ALLWINNER_A10_PIT
325    select ALLWINNER_A10_PIC
326    select ALLWINNER_A10_CCM
327    select ALLWINNER_A10_DRAMC
328    select ALLWINNER_WDT
329    select ALLWINNER_EMAC
330    select ALLWINNER_I2C
331    select ALLWINNER_A10_SPI
332    select AXP2XX_PMU
333    select SERIAL_MM
334    select UNIMP
335    select USB_OHCI_SYSBUS
336
337config ALLWINNER_H3
338    bool
339    default y
340    depends on TCG && ARM
341    select ALLWINNER_A10_PIT
342    select ALLWINNER_SUN8I_EMAC
343    select ALLWINNER_I2C
344    select ALLWINNER_WDT
345    select SERIAL_MM
346    select ARM_TIMER
347    select ARM_GIC
348    select UNIMP
349    select USB_OHCI_SYSBUS
350    select USB_EHCI_SYSBUS
351    select SD
352
353config ALLWINNER_R40
354    bool
355    default y if TCG && ARM
356    select AHCI_SYSBUS
357    select ALLWINNER_SRAMC
358    select ALLWINNER_A10_PIT
359    select ALLWINNER_WDT
360    select AXP2XX_PMU
361    select SERIAL_MM
362    select ARM_TIMER
363    select ARM_GIC
364    select UNIMP
365    select USB_OHCI_SYSBUS
366    select USB_EHCI_SYSBUS
367    select SD
368
369config RASPI
370    bool
371    default y
372    depends on TCG && ARM
373    select FRAMEBUFFER
374    select PL011 if !HAVE_RUST # UART
375    select X_PL011_RUST if HAVE_RUST # UART
376    select SDHCI
377    select USB_DWC2
378    select BCM2835_SPI
379    select BCM2835_I2C
380
381config STM32F100_SOC
382    bool
383    select ARM_V7M
384    select STM32F2XX_USART
385    select STM32F2XX_SPI
386
387config STM32F205_SOC
388    bool
389    select ARM_V7M
390    select OR_IRQ
391    select STM32F2XX_TIMER
392    select STM32F2XX_USART
393    select STM32F2XX_SYSCFG
394    select STM32F2XX_ADC
395    select STM32F2XX_SPI
396
397config STM32F405_SOC
398    bool
399    select ARM_V7M
400    select OR_IRQ
401    select STM32_RCC
402    select STM32F4XX_SYSCFG
403    select STM32F4XX_EXTI
404
405config B_L475E_IOT01A
406    bool
407    default y
408    depends on TCG && ARM
409    select STM32L4X5_SOC
410    imply DM163
411
412config STM32L4X5_SOC
413    bool
414    select ARM_V7M
415    select OR_IRQ
416    select STM32L4X5_EXTI
417    select STM32L4X5_SYSCFG
418    select STM32L4X5_RCC
419    select STM32L4X5_GPIO
420    select STM32L4X5_USART
421
422config XLNX_ZYNQMP_ARM
423    bool
424    default y if PIXMAN
425    depends on TCG && AARCH64
426    select AHCI_SYSBUS
427    select ARM_GIC
428    select CADENCE
429    select CPU_CLUSTER
430    select DDC
431    select DPCD
432    select DEVICE_TREE
433    select SDHCI
434    select SSI
435    select SSI_M25P80
436    select XILINX_AXI
437    select XILINX_SPIPS
438    select XLNX_CSU_DMA
439    select XLNX_DISPLAYPORT
440    select XLNX_ZYNQMP
441    select XLNX_ZDMA
442    select USB_DWC3
443
444config XLNX_VERSAL
445    bool
446    default y
447    depends on TCG && AARCH64
448    select ARM_GIC
449    select CPU_CLUSTER
450    select DEVICE_TREE
451    select PL011 if !HAVE_RUST # UART
452    select X_PL011_RUST if HAVE_RUST # UART
453    select CADENCE
454    select VIRTIO_MMIO
455    select UNIMP
456    select XLNX_ZDMA
457    select XLNX_ZYNQMP
458    select OR_IRQ
459    select XLNX_BBRAM
460    select XLNX_EFUSE_VERSAL
461    select XLNX_USB_SUBSYS
462    select XLNX_VERSAL_TRNG
463    select XLNX_CSU_DMA
464
465config NPCM7XX
466    bool
467    default y
468    depends on TCG && ARM
469    select A9MPCORE
470    select ADM1266
471    select ADM1272
472    select ARM_GIC
473    select SMBUS
474    select AT24C  # EEPROM
475    select MAX34451
476    select ISL_PMBUS_VR
477    select PL310  # cache controller
478    select PMBUS
479    select SERIAL_MM
480    select SSI
481    select UNIMP
482    select PCA954X
483    select USB_OHCI_SYSBUS
484
485config NPCM8XX
486    bool
487    default y
488    depends on TCG && AARCH64
489    select ARM_GIC
490    select SMBUS
491    select PL310  # cache controller
492    select NPCM7XX
493    select SERIAL
494    select SSI
495    select UNIMP
496
497
498config FSL_IMX25
499    bool
500    default y
501    depends on TCG && ARM
502    imply I2C_DEVICES
503    select IMX
504    select IMX_FEC
505    select IMX_I2C
506    select USB_CHIPIDEA
507    select WDT_IMX2
508    select SDHCI
509
510config FSL_IMX31
511    bool
512    default y
513    depends on TCG && ARM
514    imply I2C_DEVICES
515    select SERIAL_MM
516    select IMX
517    select IMX_I2C
518    select WDT_IMX2
519    select LAN9118
520
521config FSL_IMX6
522    bool
523    imply PCIE_DEVICES
524    imply I2C_DEVICES
525    select A9MPCORE
526    select IMX
527    select IMX_FEC
528    select IMX_I2C
529    select IMX_USBPHY
530    select WDT_IMX2
531    select PL310  # cache controller
532    select PCI_EXPRESS_DESIGNWARE
533    select SDHCI
534    select USB_CHIPIDEA
535    select OR_IRQ
536
537config ASPEED_SOC
538    bool
539    default y
540    depends on TCG && ARM
541    select DS1338
542    select FTGMAC100
543    select I2C
544    select DPS310
545    select PCA9552
546    select SERIAL_MM
547    select SMBUS_EEPROM
548    select PCA954X
549    select SSI
550    select SSI_M25P80
551    select TMP105
552    select TMP421
553    select EMC141X
554    select UNIMP
555    select LED
556    select PMBUS
557    select MAX31785
558    select FSI_APB2OPB_ASPEED
559    select AT24C
560
561config MPS2
562    bool
563    default y
564    depends on TCG && ARM
565    imply I2C_DEVICES
566    select ARMSSE
567    select LAN9118
568    select MPS2_FPGAIO
569    select MPS2_SCC
570    select OR_IRQ
571    select PL022    # SPI
572    select PL080    # DMA controller
573    select SPLIT_IRQ
574    select UNIMP
575    select CMSDK_APB_WATCHDOG
576    select ARM_SBCON_I2C
577
578config FSL_IMX7
579    bool
580    default y
581    depends on TCG && ARM
582    imply PCI_DEVICES
583    imply TEST_DEVICES
584    imply I2C_DEVICES
585    select A15MPCORE
586    select PCI
587    select IMX
588    select IMX_FEC
589    select IMX_I2C
590    select WDT_IMX2
591    select PCI_EXPRESS_DESIGNWARE
592    select SDHCI
593    select OR_IRQ
594    select UNIMP
595    select USB_CHIPIDEA
596
597config FSL_IMX8MP
598    bool
599    imply I2C_DEVICES
600    imply PCI_DEVICES
601    select ARM_GIC
602    select FSL_IMX8MP_ANALOG
603    select FSL_IMX8MP_CCM
604    select IMX
605    select IMX_FEC
606    select IMX_I2C
607    select OR_IRQ
608    select PCI_EXPRESS_DESIGNWARE
609    select PCI_EXPRESS_FSL_IMX8M_PHY
610    select SDHCI
611    select UNIMP
612    select USB_DWC3
613    select WDT_IMX2
614
615config FSL_IMX8MP_EVK
616    bool
617    default y
618    depends on TCG && AARCH64
619    select FSL_IMX8MP
620
621config ARM_SMMUV3
622    bool
623
624config FSL_IMX6UL
625    bool
626    default y
627    depends on TCG && ARM
628    imply I2C_DEVICES
629    select A15MPCORE
630    select IMX
631    select IMX_FEC
632    select IMX_I2C
633    select WDT_IMX2
634    select SDHCI
635    select USB_CHIPIDEA
636    select UNIMP
637
638config MICROBIT
639    bool
640    default y
641    depends on TCG && ARM
642    select NRF51_SOC
643
644config NRF51_SOC
645    bool
646    imply I2C_DEVICES
647    select I2C
648    select ARM_V7M
649    select UNIMP
650
651config EMCRAFT_SF2
652    bool
653    default y
654    depends on TCG && ARM
655    select MSF2
656    select SSI_M25P80
657
658config MSF2
659    bool
660    select ARM_V7M
661    select PTIMER
662    select SERIAL_MM
663    select SSI
664    select UNIMP
665
666config ARMSSE
667    bool
668    select ARM_V7M
669    select ARMSSE_CPU_PWRCTRL
670    select ARMSSE_CPUID
671    select ARMSSE_MHU
672    select CMSDK_APB_TIMER
673    select CMSDK_APB_DUALTIMER
674    select CMSDK_APB_UART
675    select CMSDK_APB_WATCHDOG
676    select CPU_CLUSTER
677    select IOTKIT_SECCTL
678    select IOTKIT_SYSCTL
679    select IOTKIT_SYSINFO
680    select OR_IRQ
681    select SPLIT_IRQ
682    select TZ_MPC
683    select TZ_MSC
684    select TZ_PPC
685    select UNIMP
686    select SSE_COUNTER
687    select SSE_TIMER
688