Lines Matching +full:link +full:- +full:trigger +full:- +full:order
5 - Author: Eric Lapuyade, Samuel Ortiz
6 - Contact: eric.lapuyade@intel.com, samuel.ortiz@intel.com
9 -------
12 enables easy writing of HCI-based NFC drivers. The HCI layer runs as an NFC Core
17 ---
30 - one for executing commands : nfc_hci_msg_tx_work(). Only one command
32 - one for dispatching received events and commands : nfc_hci_msg_rx_work().
35 --------------------------
41 In case the chip supports pre-opened gates and pseudo-static pipes, the driver
45 -------------------
47 A gate defines the 'port' where some service can be found. In order to access
54 ----------------
56 A driver is generally written in two parts : the physical link management and
61 --------------
90 - open() and close() shall turn the hardware on and off.
91 - hci_ready() is an optional entry point that is called right after the hci
94 - xmit() shall simply write a frame to the physical link.
95 - start_poll() is an optional entrypoint that shall set the hardware in polling
98 - dep_link_up() is called after a p2p target has been detected, to finish
101 - dep_link_down() is called to bring the p2p link down.
102 - target_from_gate() is an optional entrypoint to return the nfc protocols
104 - complete_target_discovered() is an optional entry point to let the driver
107 - im_transceive() must be implemented by the driver if proprietary HCI commands
113 - tm_send() is called to send data in the case of a p2p connection
114 - check_presence() is an optional entry point that will be called regularly
118 - event_received() is called to handle an event coming from the chip. Driver
122 using nfc_hci_recv_frame(). HCI will take care of re-aggregation and handling
126 --------------
128 The physical link (i2c, ...) management is defined by the following structure::
142 layers such as an llc to store the frame for re-emission, this
149 ---
151 Communication between the CPU and the chip often requires some link layer
186 Again, note that the llc does not handle the physical link. It is thus very
187 easy to mix any physical link with any llc for a given chip driver.
190 ----------------
196 ------------------
199 - IRQ handler (IRQH):
203 - SHDLC State Machine worker (SMW)
209 - HCI Tx Cmd worker (MSGTXWQ)
215 - HCI Rx worker (MSGRXWQ)
219 - Syscall context from a userspace call (SYSCALL)
224 -----------------------------------------------
267 ------------------------------------------
280 ----------------
290 - driver (pn544) fails to deliver an incoming frame: it stores the error such
293 problem above. shdlc stores a EREMOTEIO sticky status, which will trigger
296 - SMW is basically a background thread to handle incoming and outgoing shdlc
302 - HCI: if an internal HCI error happens (frame is lost), or HCI is reported an
307 - NFC Core: when NFC Core is notified of an error from below and polling is