xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Stefano Stabellini <sstabellini@kernel.org>
To: julien.grall@arm.com
Cc: artem_mygaiev@epam.com, volodymyr_babchuk@epam.com,
	sstabellini@kernel.org, andrii_anisov@epam.com,
	xen-devel@lists.xen.org
Subject: [PATCH v8 08/11] arm: add ALL_PLAT, QEMU, Rcar3 and MPSoC configs
Date: Mon, 30 Jul 2018 10:48:29 -0700	[thread overview]
Message-ID: <1532972912-12439-8-git-send-email-sstabellini@kernel.org> (raw)
In-Reply-To: <alpine.DEB.2.10.1807301042060.20701@sstabellini-ThinkPad-X260>

Add a "Platform Support" choice with four kconfig options: QEMU, RCAR3,
MPSOC and ALL_PLAT. They enable the required options for their hardware
platform. ALL_PLAT enables all available platforms and it's the default.
It doesn't automatically select any of the related drivers, otherwise
they cannot be disabled. ALL_PLAT is implemented by using hidden options
with default values depending on ALL_PLAT.

In the case of the MPSOC that has a platform file under
arch/arm/platforms/, build the file if MPSOC.

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
CC: artem_mygaiev@epam.com
CC: volodymyr_babchuk@epam.com

---
Changes in v8:
- remove QEMU_PLATFORM and RCAR3_PLATFORM that are currently unused
- remove selects from ALL
- rename ALL to ALL_PLAT
- introduce ALL64_PLAT and ALL32_PLAT

Changes in v5:
- turn platform support into a choice
- add ALL

Changes in v4:
- fix GICv3/GICV3
- default y to all options
- build xilinx-zynqmp if MPSOC
---
 xen/arch/arm/Kconfig            |  2 ++
 xen/arch/arm/platforms/Kconfig  | 52 +++++++++++++++++++++++++++++++++++++++++
 xen/arch/arm/platforms/Makefile |  2 +-
 3 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 xen/arch/arm/platforms/Kconfig

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 2b87111..75cacfb 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -213,6 +213,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"
+
 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..409d3f8
--- /dev/null
+++ b/xen/arch/arm/platforms/Kconfig
@@ -0,0 +1,52 @@
+choice
+	prompt "Platform Support"
+	default ALL_PLAT
+	---help---
+	Choose which hardware platform to enable in Xen.
+
+	If unsure, choose ALL_PLAT.
+
+config ALL_PLAT
+	bool "All Platforms"
+	---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 HAS_CADENCE_UART
+	select ARM_SMMU
+	---help---
+	Enable all the required drivers for Xilinx Ultrascale+ MPSoC
+
+endchoice
+
+config ALL64_PLAT
+	bool
+	default (ALL_PLAT && ARM_64)
+
+config ALL32_PLAT
+	bool
+	default (ALL_PLAT && ARM_32)
+
+config MPSOC_PLATFORM
+	bool
+	default (ALL64_PLAT || MPSOC)
+
diff --git a/xen/arch/arm/platforms/Makefile b/xen/arch/arm/platforms/Makefile
index 80e555c..a79bdb9 100644
--- a/xen/arch/arm/platforms/Makefile
+++ b/xen/arch/arm/platforms/Makefile
@@ -8,4 +8,4 @@ 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_MPSOC_PLATFORM)  += xilinx-zynqmp.o
-- 
1.9.1


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

  parent reply	other threads:[~2018-07-30 17:48 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-30 17:48 [PATCH v8 00/11] arm: more kconfig configurability and small default configs Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 01/11] arm: remove the ARM HDLCD driver Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 02/11] arm: make it possible to disable HAS_GICV3 Stefano Stabellini
2018-07-31  8:04   ` Jan Beulich
2018-07-31 11:07     ` Julien Grall
2018-07-30 17:48 ` [PATCH v8 03/11] arm: rename HAS_GICV3 to GICV3 Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 04/11] Make MEM_ACCESS configurable Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 05/11] make it possible to enable/disable UART drivers Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 06/11] arm: make it possible to disable the SMMU driver Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 07/11] arm: add a tiny kconfig configuration Stefano Stabellini
2018-07-30 17:48 ` Stefano Stabellini [this message]
2018-07-31 11:17   ` [PATCH v8 08/11] arm: add ALL_PLAT, QEMU, Rcar3 and MPSoC configs Julien Grall
2018-08-01  7:25   ` Andrii Anisov
2018-08-01 22:43     ` Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 09/11] xen: add per-platform defaults for NR_CPUS Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 10/11] xen: add cloc target Stefano Stabellini
2018-07-30 17:48 ` [PATCH v8 11/11] xen: specify support for EXPERT and DEBUG Kconfig options Stefano Stabellini
2018-07-31 11:28 ` [PATCH v8 00/11] arm: more kconfig configurability and small default configs Julien Grall
2018-07-31 16:10   ` Stefano Stabellini
2018-08-02 12:07     ` Julien Grall
2018-08-02 20:25       ` Stefano Stabellini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1532972912-12439-8-git-send-email-sstabellini@kernel.org \
    --to=sstabellini@kernel.org \
    --cc=andrii_anisov@epam.com \
    --cc=artem_mygaiev@epam.com \
    --cc=julien.grall@arm.com \
    --cc=volodymyr_babchuk@epam.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).