Re: [PATCH v3 1/5] sc_phy:SmartCard(SC) PHY interface to SC controller

From: Satish Patel
Date: Thu May 29 2014 - 23:52:20 EST




On 5/29/2014 7:17 PM, Rob Herring wrote:
On Thu, May 29, 2014 at 3:34 AM, Satish Patel <satish.patel@xxxxxx> wrote:


On 5/29/2014 12:23 AM, Greg KH wrote:

On Wed, May 28, 2014 at 02:27:13PM +0530, Satish Patel wrote:

SmartCard controller uses this interface to communicate with
SmartCard via PHY

Some SmartCard PHY has multiple slots for cards.
This inerface also enables controller to communicate
with one or more SmartCard connected over phy.

interface structure includes following APIs
- set/get config
- activate/deactivate smart card
- warm reset
- register_notify (for card insert/remove/overheat)
- unregister_notify

Signed-off-by: Satish Patel <satish.patel@xxxxxx>
---
Documentation/sc_phy.txt | 171
++++++++++++++++++++++++++++++++++++++++++++++
include/linux/sc_phy.h | 136 ++++++++++++++++++++++++++++++++++++
2 files changed, 307 insertions(+)
create mode 100644 Documentation/sc_phy.txt
create mode 100644 include/linux/sc_phy.h


These are .h files, but where is the "api" functions that use
these structures defined at?

This is like template/wrappers, smart card phy driver will write API
functions. And smartcard controller will call these functions.
With proposed approach, smartcard controller can communicate with any smart
card phy (TI/NxP) without change in code. Using DT entry smartcard and PHY
will gets connected with each other.
Refer diagram given @Documentation/sc_phy.txt.


confused,

I believe the api Greg is wondering about is the notifier which as I
commented is not a good design.

There is now a phy subsystem. I don't know if it has what you need,
but you should look at it to determine if it will work or could be
extended to work.

I have given my comments on notifier, it is required to notify real time events like card insert/remove to the smart card controller. As this interrupts tied to phy (in case phy is present) not with controller.

Existing phy subsystem does not support generic operations for the phy. If at all it adds supports for these, in future I am ok to get align with it.

Rob

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/