qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v2] hw/usb: Introduce Kconfig switches for the CCID card devi


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH v2] hw/usb: Introduce Kconfig switches for the CCID card devices
Date: Wed, 11 Dec 2019 12:51:11 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2

On 12/11/19 11:20 AM, Thomas Huth wrote:
In our downstream distribution of QEMU, we need more fine-grained
control on the set of CCID card devices that we want to include.
So let's introduce some proper Kconfig switches that it is easier
to disable them without modifying the corresponding Makefile.objs.

Signed-off-by: Thomas Huth <address@hidden>
---
  v2: Use CONFIG_SMARTCARD in Kconfig.host as suggested by Philippe

  Kconfig.host         |  3 +++
  Makefile             |  3 ++-
  hw/usb/Kconfig       | 12 +++++++++++-
  hw/usb/Makefile.objs |  9 ++++-----
  4 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/Kconfig.host b/Kconfig.host
index bb6e116e2a..b532358854 100644
--- a/Kconfig.host
+++ b/Kconfig.host
@@ -35,3 +35,6 @@ config VIRTFS
config PVRDMA
      bool
+
+config SMARTCARD
+    bool
diff --git a/Makefile b/Makefile
index b437a346d7..287cda35cb 100644
--- a/Makefile
+++ b/Makefile
@@ -388,7 +388,8 @@ MINIKCONF_ARGS = \
      CONFIG_VHOST_USER=$(CONFIG_VHOST_USER) \
      CONFIG_VIRTFS=$(CONFIG_VIRTFS) \
      CONFIG_LINUX=$(CONFIG_LINUX) \
-    CONFIG_PVRDMA=$(CONFIG_PVRDMA)
+    CONFIG_PVRDMA=$(CONFIG_PVRDMA) \
+    CONFIG_SMARTCARD=$(CONFIG_SMARTCARD)

Oh I missed this detail :)

Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>

MINIKCONF_INPUTS = $(SRC_PATH)/Kconfig.host $(SRC_PATH)/hw/Kconfig \
                     $(wildcard $(SRC_PATH)/hw/*/Kconfig)
diff --git a/hw/usb/Kconfig b/hw/usb/Kconfig
index 555e09377b..da3026586f 100644
--- a/hw/usb/Kconfig
+++ b/hw/usb/Kconfig
@@ -90,9 +90,19 @@ config USB_BLUETOOTH
  config USB_SMARTCARD
      bool
      default y
-    depends on USB
+    depends on USB && SMARTCARD
config USB_STORAGE_MTP
      bool
      default y
      depends on USB
+
+config CCID_PASSTHRU
+    bool
+    default y
+    depends on USB_SMARTCARD
+
+config CCID_EMULATED
+    bool
+    default y
+    depends on USB_SMARTCARD
diff --git a/hw/usb/Makefile.objs b/hw/usb/Makefile.objs
index 303ac084a0..478e6d5752 100644
--- a/hw/usb/Makefile.objs
+++ b/hw/usb/Makefile.objs
@@ -27,13 +27,12 @@ common-obj-$(CONFIG_USB_SERIAL)       += dev-serial.o
  common-obj-$(CONFIG_USB_NETWORK)      += dev-network.o
  common-obj-$(CONFIG_USB_BLUETOOTH)    += dev-bluetooth.o
-ifeq ($(CONFIG_USB_SMARTCARD),y)
-common-obj-y                          += dev-smartcard-reader.o
-common-obj-$(CONFIG_SMARTCARD)        += smartcard.mo
-smartcard.mo-objs := ccid-card-passthru.o ccid-card-emulated.o
+common-obj-$(CONFIG_USB_SMARTCARD)    += dev-smartcard-reader.o
+common-obj-$(call lor,$(CONFIG_CCID_PASSTHRU),$(CONFIG_CCID_EMULATED)) += 
smartcard.mo
+smartcard.mo-objs := $(call lif,$(CONFIG_CCID_PASSTHRU),ccid-card-passthru.o) \
+                     $(call lif,$(CONFIG_CCID_EMULATED),ccid-card-emulated.o)
  smartcard.mo-cflags := $(SMARTCARD_CFLAGS)
  smartcard.mo-libs := $(SMARTCARD_LIBS)
-endif
ifeq ($(CONFIG_POSIX),y)
  common-obj-$(CONFIG_USB_STORAGE_MTP)  += dev-mtp.o





reply via email to

[Prev in Thread] Current Thread [Next in Thread]