summaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/serial.h
diff options
context:
space:
mode:
authorNicolas Ferre2018-09-26 14:58:47 +0200
committerGreg Kroah-Hartman2018-10-02 22:38:55 +0200
commitad8c0eaa0a418ae8ef3f9217638bb86439399eac (patch)
tree241e4840c8ab6aac781a68a27d61d9fe0c42688a /include/uapi/linux/serial.h
parentserial:serial_core: Allow use of CTS for PPS line discipline (diff)
downloadkernel-qcow2-linux-ad8c0eaa0a418ae8ef3f9217638bb86439399eac.tar.gz
kernel-qcow2-linux-ad8c0eaa0a418ae8ef3f9217638bb86439399eac.tar.xz
kernel-qcow2-linux-ad8c0eaa0a418ae8ef3f9217638bb86439399eac.zip
tty/serial_core: add ISO7816 infrastructure
Add the ISO7816 ioctl and associated accessors and data structure. Drivers can then use this common implementation to handle ISO7816 (smart cards). Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com> [ludovic.desroches@microchip.com: squash and rebase, removal of gpios, checkpatch fixes] Signed-off-by: Ludovic Desroches <ludovic.desroches@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/uapi/linux/serial.h')
-rw-r--r--include/uapi/linux/serial.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/uapi/linux/serial.h b/include/uapi/linux/serial.h
index 3fdd0dee8b41..93eb3c496ff1 100644
--- a/include/uapi/linux/serial.h
+++ b/include/uapi/linux/serial.h
@@ -132,4 +132,21 @@ struct serial_rs485 {
are a royal PITA .. */
};
+/*
+ * Serial interface for controlling ISO7816 settings on chips with suitable
+ * support. Set with TIOCSISO7816 and get with TIOCGISO7816 if supported by
+ * your platform.
+ */
+struct serial_iso7816 {
+ __u32 flags; /* ISO7816 feature flags */
+#define SER_ISO7816_ENABLED (1 << 0)
+#define SER_ISO7816_T_PARAM (0x0f << 4)
+#define SER_ISO7816_T(t) (((t) & 0x0f) << 4)
+ __u32 tg;
+ __u32 sc_fi;
+ __u32 sc_di;
+ __u32 clk;
+ __u32 reserved[5];
+};
+
#endif /* _UAPI_LINUX_SERIAL_H */