Partager via


Gestion des séquences NFC CX

La plupart des fonctionnalités et extensions NCI non standard implémentées par le microprogramme NFCC de différents fournisseurs sont liées à la configuration du circuit, au téléchargement du microprogramme et au réglage du matériel. Ces extensions non standard peuvent être prises en charge par le pilote client NFC en s’inscrivant pour des séquences de pilotes spécifiques exposées par nfc CX. Le pilote client s’inscrit pour des gestionnaires de séquence spécifiques via la fonction NfcCxRegisterSequenceHandler . Elle est généralement effectuée pendant l’initialisation et doit être appelée après NfcCxDeviceInitialize. Ces gestionnaires sont désinscrits en appelant NfcCxUnRegisterSequenceHandler pendant l’arrêt de l’appareil. Une fois le rappel du gestionnaire de séquence du pilote client appelé, le pilote NFC CX n’émet pas de commandes NCI tant que le pilote client NFC n’a pas terminé sa gestion. Ces rappels de gestionnaires de séquence sont conçus pour être asynchrones, ce qui permet au client d’émettre un nombre quelconque de demandes d’E/S au contrôleur avant de notifier l’cx NFC de son achèvement. NFC CX utilise un mécanisme de minuteur de surveillance pour déterminer les états suspendus. Si le minuteur de surveillance expire avant l’achèvement du gestionnaire de séquence par le client, un bogue case activée est déclenché et le processus hôte UMDF est arrêté par l’infrastructure UMDF.

Voici les conditions requises pour le pilote client NFC lors de l’implémentation de toute logique supplémentaire dans le cadre du gestionnaire de séquence :

  • Toutes les commandes NIC envoyées par le client NFC lors de la gestion de ces séquences doivent garantir que l’intégrité de l’état actuel tel que spécifié par nfc CX n’est pas violée. Par conséquent, le client NFC doit respecter cette exigence pour garantir le bon fonctionnement de l’appareil NFC. Par exemple, lors de la gestion de la séquence complète d’initialisation, le pilote client ne doit pas émettre de CORE_RESET_CMD NCI pour réinitialiser le jeu de puces.
  • Le pilote client NFC doit s’assurer que les réponses NCI et les notifications générées par les commandes NCI qu’il envoie au contrôleur ne sont pas envoyées à la fonction NfcCxNciReadNotification du NFC CX. Cela est obligatoire, car sinon, la machine d’état NFC CX NCI se désynchroniserait avec les commandes qu’elle échange avec le NFCC.