2 * Copyright (C) 2010 NXP Semiconductors
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 * \file phDalNfc_link.h
19 * \brief DAL generic link interface for linux
21 * Project: Trusted NFC Linux Lignt
24 * $Author: Jonathan roux
29 /**< Basic type definitions */
30 #include <phNfcTypes.h>
31 /**< Generic Interface Layer Function Definitions */
32 #include <phNfcInterface.h>
33 #include <phDal4Nfc.h>
35 typedef void (*phDal4Nfc_link_initialize_CB_t) (void);
36 typedef void (*phDal4Nfc_link_set_open_from_handle_CB_t) (phHal_sHwReference_t * pDalHwContext);
37 typedef int (*phDal4Nfc_link_is_opened_CB_t) (void);
38 typedef void (*phDal4Nfc_link_flush_CB_t) (void);
39 typedef void (*phDal4Nfc_link_close_CB_t) (void);
40 typedef NFCSTATUS (*phDal4Nfc_link_open_and_configure_CB_t) (pphDal4Nfc_sConfig_t pConfig, void ** pLinkHandle);
41 typedef int (*phDal4Nfc_link_read_CB_t) (uint8_t * pBuffer, int nNbBytesToRead);
42 typedef int (*phDal4Nfc_link_write_CB_t) (uint8_t * pBuffer, int nNbBytesToWrite);
43 typedef int (*phDal4Nfc_link_download_CB_t) (long level);
44 typedef int (*phDal4Nfc_link_reset_CB_t) (long level);
49 phDal4Nfc_link_initialize_CB_t init;
50 phDal4Nfc_link_set_open_from_handle_CB_t open_from_handle;
51 phDal4Nfc_link_is_opened_CB_t is_opened;
52 phDal4Nfc_link_flush_CB_t flush;
53 phDal4Nfc_link_close_CB_t close;
54 phDal4Nfc_link_open_and_configure_CB_t open_and_configure;
55 phDal4Nfc_link_read_CB_t read;
56 phDal4Nfc_link_write_CB_t write;
57 phDal4Nfc_link_download_CB_t download;
58 phDal4Nfc_link_reset_CB_t reset;
59 } phDal4Nfc_link_cbk_interface_t;