README.md
1 # NXP PN80T/PN81A support
2
3 libese support for the PN80T series of embedded secure elements is
4 implemented using a common set of shared hardware functions and
5 communication specific behavior.
6
7 The common behavior is found in "common.h". Support for using Linux
8 spidev s in "linux\_spidev.c", and support for using a simple nq-nci
9 associated kernel driver is in "nq\_nci.c".
10
11 # Implementing a new backend
12
13 When implementing a new backend, the required header is:
14
15 #include "../include/ese/hw/nxp/pn80t/common.h"
16
17 Once included, the implementation must provide its own
18 receive and transmit libese-hw functions and a struct Pn80tPlatform,
19 defined in "../include/ese/hw/nxp/pn80t/platform.h".
20
21 Platform requires a dedicated initialize, release, wait functions as
22 well support for controlling NFC\_VEN, SVDD\_PWR\_REQ, and reset.
23
24 See the bottom of the other implementations for an example of the
25 required exports.
26
27 Any other functionality, such as libese-sysdeps, may also need to be
28 provided separately.
29