2015-09-25 08:49:41

by Jean Delvare

[permalink] [raw]
Subject: [PATCH 1/3] NFC: pn544: Auto-select core module

As I understand it, the core nfc_pn544 module is useless without
either the I2C or the MEI access module. So hide NFC_PN544 and
select it automatically if either NFC_PN544_I2C or NFC_PN544_MEI is
selected.

This avoids presenting NFC_PN544 when neither NFC_PN544_I2C nor
NFC_PN544_MEI can be selected.

Signed-off-by: Jean Delvare <[email protected]>
Cc: Lauro Ramos Venancio <[email protected]>
Cc: Aloisio Almeida Jr <[email protected]>
Cc: Samuel Ortiz <[email protected]>
---
Already sent on 2014-04-19.

Note that the s3fwrn5 NFC driver is already implemented the same way.

drivers/nfc/pn544/Kconfig | 18 +++++++-----------
1 file changed, 7 insertions(+), 11 deletions(-)

--- linux-3.15-rc1.orig/drivers/nfc/pn544/Kconfig 2014-04-18 19:18:55.998723014 +0200
+++ linux-3.15-rc1/drivers/nfc/pn544/Kconfig 2014-04-18 19:19:16.195149146 +0200
@@ -1,20 +1,15 @@
config NFC_PN544
- tristate "NXP PN544 NFC driver"
- depends on NFC_HCI
+ tristate
select CRC_CCITT
- default n
---help---
NXP PN544 core driver.
This is a driver based on the HCI NFC kernel layers and
will thus not work with NXP libnfc library.

- To compile this driver as a module, choose m here. The module will
- be called pn544.
- Say N if unsure.
-
config NFC_PN544_I2C
- tristate "NFC PN544 i2c support"
- depends on NFC_PN544 && I2C && NFC_SHDLC
+ tristate "NXP PN544 device support (I2C)"
+ depends on NFC_HCI && I2C && NFC_SHDLC
+ select NFC_PN544
---help---
This module adds support for the NXP pn544 i2c interface.
Select this if your platform is using the i2c bus.
@@ -23,8 +18,9 @@ config NFC_PN544_I2C
Say N if unsure.

config NFC_PN544_MEI
- tristate "NFC PN544 MEI support"
- depends on NFC_PN544 && NFC_MEI_PHY
+ tristate "NXP PN544 device support (MEI)"
+ depends on NFC_HCI && NFC_MEI_PHY
+ select NFC_PN544
---help---
This module adds support for the mei interface of adapters using
NXP pn544 chipsets. Select this if your pn544 chipset


--
Jean Delvare
SUSE L3 Support


2015-09-25 08:52:29

by Jean Delvare

[permalink] [raw]
Subject: [PATCH v2 2/3] NFC: microread: Auto-select core module

As I understand it, the core nfc_microread module is useless without
either the I2C or the MEI access module. So hide NFC_MICROREAD and
select it automatically if either NFC_MICROREAD_I2C or
NFC_MICROREAD_MEI is selected.

This avoids presenting NFC_MICROREAD when neither NFC_MICROREAD_I2C
nor NFC_MICROREAD_MEI can be selected.

Signed-off-by: Jean Delvare <[email protected]>
Cc: Lauro Ramos Venancio <[email protected]>
Cc: Aloisio Almeida Jr <[email protected]>
Cc: Samuel Ortiz <[email protected]>
---
Already sent on 2014-04-19. Changes since v1: typo fixed.

Note that the s3fwrn5 NFC driver is already implemented the same way.

drivers/nfc/microread/Kconfig | 18 +++++++-----------
1 file changed, 7 insertions(+), 11 deletions(-)

--- linux-4.3-rc2.orig/drivers/nfc/microread/Kconfig 2015-09-24 11:44:28.178747561 +0200
+++ linux-4.3-rc2/drivers/nfc/microread/Kconfig 2015-09-25 10:43:21.202108737 +0200
@@ -1,20 +1,15 @@
config NFC_MICROREAD
- tristate "Inside Secure microread NFC driver"
- depends on NFC_HCI
+ tristate
select CRC_CCITT
- default n
---help---
This module contains the main code for Inside Secure microread
NFC chipsets. It implements the chipset HCI logic and hooks into
the NFC kernel APIs. Physical layers will register against it.

- To compile this driver as a module, choose m here. The module will
- be called microread.
- Say N if unsure.
-
config NFC_MICROREAD_I2C
- tristate "NFC Microread i2c support"
- depends on NFC_MICROREAD && I2C && NFC_SHDLC
+ tristate "Inside Secure Microread device support (I2C)"
+ depends on NFC_HCI && I2C && NFC_SHDLC
+ select NFC_MICROREAD
---help---
This module adds support for the i2c interface of adapters using
Inside microread chipsets. Select this if your platform is using
@@ -24,8 +19,9 @@ config NFC_MICROREAD_I2C
Say N if unsure.

config NFC_MICROREAD_MEI
- tristate "NFC Microread MEI support"
- depends on NFC_MICROREAD && NFC_MEI_PHY
+ tristate "Inside Secure Microread device support (MEI)"
+ depends on NFC_HCI && NFC_MEI_PHY
+ select NFC_MICROREAD
---help---
This module adds support for the mei interface of adapters using
Inside microread chipsets. Select this if your microread chipset

--
Jean Delvare
SUSE L3 Support

2015-09-25 08:59:07

by Jean Delvare

[permalink] [raw]
Subject: [PATCH v2 3/3] NFC: nfcmrvl: Auto-select core module

As I understand it, the core nfcmrvl module is useless without
either the USB or the UART access module. So hide NFC_MRVL and select
it automatically if either NFC_MRVL_USB or NFC_MRVL_UART is selected.

This avoids presenting NFC_MRVL when neither NFC_MRVL_USB nor
NFC_MRVL_UART can be selected.

Signed-off-by: Jean Delvare <[email protected]>
Cc: Lauro Ramos Venancio <[email protected]>
Cc: Aloisio Almeida Jr <[email protected]>
Cc: Samuel Ortiz <[email protected]>
---
Already sent on 2014-04-19. Changes since v1: rebased to handle
NFC_MRVL_UART.

Note that the s3fwrn5 NFC driver is already implemented the same way.

drivers/nfc/nfcmrvl/Kconfig | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)

--- linux-4.3-rc2.orig/drivers/nfc/nfcmrvl/Kconfig 2015-09-24 11:44:28.103745867 +0200
+++ linux-4.3-rc2/drivers/nfc/nfcmrvl/Kconfig 2015-09-25 10:39:53.972729905 +0200
@@ -1,18 +1,15 @@
config NFC_MRVL
- tristate "Marvell NFC driver support"
- depends on NFC_NCI
+ tristate
help
The core driver to support Marvell NFC devices.

This driver is required if you want to support
Marvell NFC device 8897.

- Say Y here to compile Marvell NFC driver into the kernel or
- say M to compile it as module.
-
config NFC_MRVL_USB
tristate "Marvell NFC-over-USB driver"
- depends on NFC_MRVL && USB
+ depends on NFC_NCI && USB
+ select NFC_MRVL
help
Marvell NFC-over-USB driver.

@@ -24,7 +21,8 @@ config NFC_MRVL_USB

config NFC_MRVL_UART
tristate "Marvell NFC-over-UART driver"
- depends on NFC_MRVL && NFC_NCI_UART
+ depends on NFC_NCI && NFC_NCI_UART
+ select NFC_MRVL
help
Marvell NFC-over-UART driver.


--
Jean Delvare
SUSE L3 Support

2015-10-20 04:50:18

by Samuel Ortiz

[permalink] [raw]
Subject: Re: [PATCH 1/3] NFC: pn544: Auto-select core module

Hi Jean,

On Fri, Sep 25, 2015 at 10:49:36AM +0200, Jean Delvare wrote:
> As I understand it, the core nfc_pn544 module is useless without
> either the I2C or the MEI access module. So hide NFC_PN544 and
> select it automatically if either NFC_PN544_I2C or NFC_PN544_MEI is
> selected.
>
> This avoids presenting NFC_PN544 when neither NFC_PN544_I2C nor
> NFC_PN544_MEI can be selected.
It also avoids building the core driver when no physical layer has been
selected.

All 3 patches applied to nfc-next, thanks.

Cheers,
Samuel.