All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefano Stabellini <sstabellini@kernel.org>
To: julien.grall@arm.com
Cc: artem_mygaiev@epam.com, lars.kurth@citrix.com,
	sstabellini@kernel.org, andrii_anisov@epam.com,
	George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com,
	ian.jackson@eu.citrix.com, dfaggioli@suse.com, tim@xen.org,
	jbeulich@suse.com, wei.liu2@citrix.com, xen-devel@lists.xen.org
Subject: [PATCH v3 06/10] xen: remove HAS_ prefix from UART Kconfig options
Date: Tue, 22 May 2018 17:25:04 -0700	[thread overview]
Message-ID: <1527035108-15051-6-git-send-email-sstabellini@kernel.org> (raw)
In-Reply-To: <alpine.DEB.2.10.1805221719560.24793@sstabellini-ThinkPad-X260>

UART drivers are now selectable by the user. To mark the change, remove
the HAS_ prefix.

Use HAS_* options to mark which options are available on which
architecture. Use HAS_*_ALWAYS_ON options to mark which options are
silent and always enabled on a given architecture.

Make NS16550 and EHCI silent and always enabled on x86.
Make all the others selectable on ARM, default on.

Suggested-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
CC: andrew.cooper3@citrix.com
CC: George.Dunlap@eu.citrix.com
CC: ian.jackson@eu.citrix.com
CC: jbeulich@suse.com
CC: julien.grall@arm.com
CC: konrad.wilk@oracle.com
CC: sstabellini@kernel.org
CC: tim@xen.org
CC: wei.liu2@citrix.com


---
Changes in v3:
- use HAS_* options to mark which options are available on which arch
- use HAS_*_ALWAYS_ON options to mark which options are silent and
  always enabled on a given arch
- mark UART appropriately on x86 and arm
- remove HAS_ prefix everywhere else

Changes in v2:
- patch added
---
 tools/firmware/xen-dir/shim.config |  2 +-
 xen/arch/arm/Kconfig               | 28 ++++++++++++++++++++++++++
 xen/arch/x86/Kconfig               | 14 +++++++++++++
 xen/drivers/char/Kconfig           | 41 ++++++++++++++++++++++----------------
 xen/drivers/char/Makefile          | 16 +++++++--------
 5 files changed, 75 insertions(+), 26 deletions(-)

diff --git a/tools/firmware/xen-dir/shim.config b/tools/firmware/xen-dir/shim.config
index 21d7075..d3a40e7 100644
--- a/tools/firmware/xen-dir/shim.config
+++ b/tools/firmware/xen-dir/shim.config
@@ -63,7 +63,7 @@ CONFIG_ACPI=y
 CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
 CONFIG_NUMA=y
 CONFIG_HAS_NS16550=y
-CONFIG_HAS_EHCI=y
+CONFIG_EHCI=y
 CONFIG_HAS_CPUFREQ=y
 CONFIG_HAS_PASSTHROUGH=y
 CONFIG_HAS_PCI=y
diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 164cdc3..a5a6943 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -20,6 +20,13 @@ config ARM
 	select HAS_MEM_ACCESS
 	select HAS_PASSTHROUGH
 	select HAS_PDX
+	select HAS_NS16550
+	select HAS_CADENCE_UART
+	select HAS_MVEBU
+	select HAS_PL011
+	select HAS_EXYNOS4210
+	select HAS_OMAP
+	select HAS_SCIF
 
 config ARCH_DEFCONFIG
 	string
@@ -29,6 +36,27 @@ config ARCH_DEFCONFIG
 config HAS_MEM_ACCESS
 	def_bool y
 
+config HAS_NS16550
+	def_bool y
+
+config HAS_CADENCE_UART
+	def_bool y
+
+config HAS_MVEBU
+	def_bool y
+
+config HAS_PL011
+	def_bool y
+
+config HAS_EXYNOS4210
+	def_bool y
+
+config HAS_OMAP
+	def_bool y
+
+config HAS_SCIF
+	def_bool y
+
 menu "Architecture Features"
 
 source "arch/Kconfig"
diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 0c49d71..e69f5ac 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -11,6 +11,7 @@ config X86
 	select HAS_ALTERNATIVE
 	select HAS_CPUFREQ
 	select HAS_EHCI
+	select HAS_EHCI_ALWAYS_ON
 	select HAS_EX_TABLE
 	select HAS_GDBSX
 	select HAS_IOPORTS
@@ -20,6 +21,7 @@ config X86
 	select HAS_MEM_PAGING
 	select HAS_MEM_SHARING
 	select HAS_NS16550
+	select HAS_NS16550_ALWAYS_ON
 	select HAS_PASSTHROUGH
 	select HAS_PCI
 	select HAS_PDX
@@ -37,6 +39,18 @@ config HAS_MEM_ACCESS
 config MEM_ACCESS_ALWAYS_ON
 	def_bool y
 
+config HAS_NS16550
+	def_bool y
+
+config HAS_NS16550_ALWAYS_ON
+	def_bool y
+
+config HAS_EHCI
+	def_bool y
+
+config HAS_EHCI_ALWAYS_ON
+	def_bool y
+
 menu "Architecture Features"
 
 source "arch/Kconfig"
diff --git a/xen/drivers/char/Kconfig b/xen/drivers/char/Kconfig
index c8f30b8..7204d38 100644
--- a/xen/drivers/char/Kconfig
+++ b/xen/drivers/char/Kconfig
@@ -1,60 +1,67 @@
-config HAS_NS16550
-	bool "NS16550 UART driver" if ARM
+config NS16550
+	bool "NS16550 UART driver" if !HAS_NS16550_ALWAYS_ON
+	depends on HAS_NS16550
 	default y
 	help
 	  This selects the 16550-series UART support. For most systems, say Y.
 
-config HAS_CADENCE_UART
-	bool "Xilinx Cadence UART driver"
+config CADENCE_UART
+	bool "Xilinx Cadence UART driver" if !HAS_CADENCE_UART_ALWAYS_ON
+	depends on HAS_CADENCE_UART
 	default y
 	depends on ARM_64
 	help
 	  This selects the Xilinx Zynq Cadence UART. If you have a Xilinx Zynq
 	  based board, say Y.
 
-config HAS_MVEBU
-	bool "Marvell MVEBU UART driver"
+config MVEBU
+	bool "Marvell MVEBU UART driver" if !HAS_MVEBU_ALWAYS_ON
+	depends on HAS_MVEBU
 	default y
 	depends on ARM_64
 	help
 	  This selects the Marvell MVEBU UART. If you have a ARMADA 3700
 	  based board, say Y.
 
-config HAS_PL011
-	bool "ARM PL011 UART driver"
+config PL011
+	bool "ARM PL011 UART driver" if !HAS_PL011_ALWAYS_ON
+	depends on HAS_PL011
 	default y
 	depends on ARM
 	help
 	  This selects the ARM(R) AMBA(R) PrimeCell PL011 UART. If you have
 	  an Integrator/PP2, Integrator/CP or Versatile platform, say Y.
 
-config HAS_EXYNOS4210
-	bool "Samsung Exynos 4210 UART driver"
+config EXYNOS4210
+	bool "Samsung Exynos 4210 UART driver" if !HAS_EXYNOS4210_ALWAYS_ON
+	depends on HAS_EXYNOS4210
 	default y
 	depends on ARM_32
 	help
 	  This selects the Samsung Exynos 4210 UART. If you have a Samsung
 	  Exynos based board, say Y.
 
-config HAS_OMAP
-	bool "Texas Instruments OMAP UART driver"
+config OMAP
+	bool "Texas Instruments OMAP UART driver" if !HAS_OMAP_ALWAYS_ON
+	depends on HAS_OMAP
 	default y
 	depends on ARM_32
 	help
 	  This selects the Texas Instruments OMAP UART. If you have a Texas
 	  Instruments based CPU, say Y.
 
-config HAS_SCIF
-	bool "SuperH SCI(F) UART driver"
+config SCIF
+	bool "SuperH SCI(F) UART driver" if !HAS_SCIF_ALWAYS_ON
+	depends on HAS_SCIF
 	default y
 	depends on ARM
 	help
 	  This selects the SuperH SCI(F) UART. If you have a SuperH based board,
 	  or Renesas R-Car Gen 2/3 based board say Y.
 
-config HAS_EHCI
-	bool "EHCI UART driver"
-	depends on X86
+config EHCI
+	bool "EHCI UART driver" if !HAS_EHCI_ALWAYS_ON
+	depends on HAS_EHCI
 	help
 	  This selects the USB based EHCI debug port to be used as a UART. If
 	  you have an x86 based system with USB, say Y.
diff --git a/xen/drivers/char/Makefile b/xen/drivers/char/Makefile
index b68c330..94014c3 100644
--- a/xen/drivers/char/Makefile
+++ b/xen/drivers/char/Makefile
@@ -1,12 +1,12 @@
 obj-y += console.o
-obj-$(CONFIG_HAS_NS16550) += ns16550.o
-obj-$(CONFIG_HAS_CADENCE_UART) += cadence-uart.o
-obj-$(CONFIG_HAS_PL011) += pl011.o
-obj-$(CONFIG_HAS_EXYNOS4210) += exynos4210-uart.o
-obj-$(CONFIG_HAS_MVEBU) += mvebu-uart.o
-obj-$(CONFIG_HAS_OMAP) += omap-uart.o
-obj-$(CONFIG_HAS_SCIF) += scif-uart.o
-obj-$(CONFIG_HAS_EHCI) += ehci-dbgp.o
+obj-$(CONFIG_NS16550) += ns16550.o
+obj-$(CONFIG_CADENCE_UART) += cadence-uart.o
+obj-$(CONFIG_PL011) += pl011.o
+obj-$(CONFIG_EXYNOS4210) += exynos4210-uart.o
+obj-$(CONFIG_MVEBU) += mvebu-uart.o
+obj-$(CONFIG_OMAP) += omap-uart.o
+obj-$(CONFIG_SCIF) += scif-uart.o
+obj-$(CONFIG_EHCI) += ehci-dbgp.o
 obj-$(CONFIG_ARM) += arm-uart.o
 obj-y += serial.o
 obj-$(CONFIG_XEN_GUEST) += xen_pv_console.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-05-23  0:25 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-23  0:24 [PATCH v3 0/10] arm: more kconfig configurability and small default configs Stefano Stabellini
2018-05-23  0:24 ` [PATCH v3 01/10] arm: remove the ARM HDLCD driver Stefano Stabellini
2018-05-29 13:37   ` Julien Grall
2018-05-23  0:25 ` [PATCH v3 02/10] arm: make it possible to disable HAS_GICV3 Stefano Stabellini
2018-05-29 13:38   ` Julien Grall
2018-05-23  0:25 ` [PATCH v3 03/10] arm: rename HAS_GICV3 to GICV3 Stefano Stabellini
2018-05-29 13:39   ` Julien Grall
2018-05-23  0:25 ` [PATCH v3 04/10] Make MEM_ACCESS configurable Stefano Stabellini
2018-05-29 11:50   ` Jan Beulich
2018-05-30 20:24     ` Stefano Stabellini
2018-05-30 22:19       ` Tamas K Lengyel
2018-06-01  7:30       ` Jan Beulich
2018-05-23  0:25 ` [PATCH v3 05/10] make it possible to enable/disable UART drivers Stefano Stabellini
2018-05-29 12:02   ` Jan Beulich
2018-05-23  0:25 ` Stefano Stabellini [this message]
2018-05-29 12:06   ` [PATCH v3 06/10] xen: remove HAS_ prefix from UART Kconfig options Jan Beulich
2018-05-30 20:33     ` Stefano Stabellini
2018-05-23  0:25 ` [PATCH v3 07/10] arm: make it possible to disable the SMMU driver Stefano Stabellini
2018-05-23 17:54   ` Andrii Anisov
2018-05-23 19:16     ` Stefano Stabellini
2018-05-24  8:01       ` Andrii Anisov
2018-05-29 12:07   ` Jan Beulich
2018-05-29 13:40   ` Julien Grall
2018-05-23  0:25 ` [PATCH v3 08/10] arm: add a tiny kconfig configuration Stefano Stabellini
2018-05-23  0:25 ` [PATCH v3 09/10] arm: add QEMU, Rcar3 and MPSoC configs Stefano Stabellini
2018-05-29 14:07   ` Julien Grall
2018-05-30 21:39     ` Stefano Stabellini
2018-05-30 22:38       ` Julien Grall
2018-05-31 21:38         ` Stefano Stabellini
2018-06-04 15:58           ` Julien Grall
2018-05-23  0:25 ` [PATCH v3 10/10] xen: add cloc target Stefano Stabellini
2018-05-29 12:15   ` Jan Beulich
2018-05-30  0:50     ` 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=1527035108-15051-6-git-send-email-sstabellini@kernel.org \
    --to=sstabellini@kernel.org \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=andrii_anisov@epam.com \
    --cc=artem_mygaiev@epam.com \
    --cc=dfaggioli@suse.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=julien.grall@arm.com \
    --cc=lars.kurth@citrix.com \
    --cc=tim@xen.org \
    --cc=wei.liu2@citrix.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.