[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v7 08/12] arm: add ALL, QEMU, Rcar3 and MPSoC configs



Hi,

On 27/07/18 12:21, Andrii Anisov wrote:
I would suggest something like:

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 06ba4a4..794f06e 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -218,6 +218,8 @@ config ARM64_HARDEN_BRANCH_PREDICTOR
  config ARM32_HARDEN_BRANCH_PREDICTOR
      def_bool y if ARM_32 && HARDEN_BRANCH_PREDICTOR

+source "arch/arm/platforms/Kconfig"
+

There are no need for duplication. You can instead do something like:

config ALL_64
    default (ALL && ARM_64)

config ALL_32
    default (ALL && ARM_32)

config MPSOC_PLATFORM
    bool
    default (ALL_64 || MPSOC)

Cheers,

  source "common/Kconfig"

  source "drivers/Kconfig"
diff --git a/xen/arch/arm/platforms/Kconfig b/xen/arch/arm/platforms/Kconfig
new file mode 100644
index 0000000..badf17b
--- /dev/null
+++ b/xen/arch/arm/platforms/Kconfig
@@ -0,0 +1,72 @@
+choice
+    prompt "Platform Support"
+    depends on ARM_32
+    default ALL_32
+    ---help---
+    Choose which hardware platform to enable in Xen.
+
+    If unsure, choose ALL.
+
+config ALL_32
+    bool "All Platforms"
+    ---help---
+    Enable support for all available hardware platforms. It doesn't
+    automatically select any of the related drivers.
+
+config NONE_32
+    bool "No Platform support"
+    ---help---
+    Remove all platform code. > +
+endchoice
+
+choice
+    prompt "Platform Support"
+    depends on ARM_64
+    default ALL_64
+    ---help---
+    Choose which hardware platform to enable in Xen.
+
+    If unsure, choose ALL.
+
+config ALL_64
+    bool "All Platforms"
+    select MPSOC_PLATFORM
+    ---help---
+    Enable support for all available hardware platforms. It doesn't
+    automatically select any of the related drivers.
+
+config QEMU
+    bool "QEMU aarch virt machine support"
+    depends on ARM_64
+    select GICV3
+    select HAS_PL011
+    ---help---
+    Enable all the required drivers for QEMU aarch64 virt emulated
+    machine.
+
+config RCAR3
+    bool "Renesas RCar3 support"
+    depends on ARM_64
+    select HAS_SCIF
+    ---help---
+    Enable all the required drivers for Renesas RCar3
+
+config MPSOC
+    bool "Xilinx Ultrascale+ MPSoC support"
+    depends on ARM_64
+    select MPSOC_PLATFORM
+    select HAS_CADENCE_UART
+    select ARM_SMMU
+    ---help---
+    Enable all the required drivers for Xilinx Ultrascale+ MPSoC
+
+config NONE_64
+    bool "No Platform support"
+    ---help---
+    Remove all platform code.
+
+endchoice
+
+config MPSOC_PLATFORM
+    bool
diff --git a/xen/arch/arm/platforms/Makefile b/xen/arch/arm/platforms/Makefile
index 80e555c..c8e763e 100644
--- a/xen/arch/arm/platforms/Makefile
+++ b/xen/arch/arm/platforms/Makefile
@@ -1,11 +1,14 @@
-obj-y += vexpress.o
-obj-$(CONFIG_ARM_32) += brcm.o
-obj-$(CONFIG_ARM_32) += exynos5.o
-obj-$(CONFIG_ARM_32) += midway.o
-obj-$(CONFIG_ARM_32) += omap5.o
-obj-$(CONFIG_ARM_32) += rcar2.o
-obj-$(CONFIG_ARM_64) += seattle.o
-obj-y += sunxi.o
-obj-$(CONFIG_ARM_64) += thunderx.o
-obj-$(CONFIG_ARM_64) += xgene-storm.o
-obj-$(CONFIG_ARM_64) += xilinx-zynqmp.o
+obj-$(CONFIG_ALL_32) += vexpress.o
+obj-$(CONFIG_ALL_32) += sunxi.o
+obj-$(CONFIG_ALL_32) += brcm.o
+obj-$(CONFIG_ALL_32) += exynos5.o
+obj-$(CONFIG_ALL_32) += midway.o
+obj-$(CONFIG_ALL_32) += omap5.o
+obj-$(CONFIG_ALL_32) += rcar2.o
+
+obj-$(CONFIG_ALL_64) += vexpress.o
+obj-$(CONFIG_ALL_64) += sunxi.o
+obj-$(CONFIG_ALL_64) += seattle.o
+obj-$(CONFIG_ALL_64) += thunderx.o
+obj-$(CONFIG_ALL_64) += xgene-storm.o
+obj-$(CONFIG_MPSOC_PLATFORM)  += xilinx-zynqmp.o



--
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.