From 6bc9d64fbb780b5245bc0d47dd6aaeeb2249aa45 Mon Sep 17 00:00:00 2001 From: Romuald Conty Date: Sun, 21 Oct 2012 14:10:43 +0000 Subject: [PATCH] Remove unused prototypes in drivers/*.h --- libnfc/drivers/acr122_pcsc.c | 12 ++++--- libnfc/drivers/acr122_pcsc.h | 19 ++++------- libnfc/drivers/acr122_usb.c | 29 +++++++++-------- libnfc/drivers/acr122_usb.h | 20 ++++-------- libnfc/drivers/acr122s.c | 63 +++++++++++++----------------------- libnfc/drivers/acr122s.h | 10 +----- libnfc/drivers/arygon.c | 47 ++++++++++++++------------- libnfc/drivers/arygon.h | 23 ++++--------- libnfc/drivers/pn532_uart.c | 53 +++++++++++++++--------------- libnfc/drivers/pn532_uart.h | 22 ++++--------- libnfc/drivers/pn53x_usb.c | 15 +++++---- libnfc/drivers/pn53x_usb.h | 20 ++++-------- 12 files changed, 139 insertions(+), 194 deletions(-) diff --git a/libnfc/drivers/acr122_pcsc.c b/libnfc/drivers/acr122_pcsc.c index 65b6903..c4e45f7 100644 --- a/libnfc/drivers/acr122_pcsc.c +++ b/libnfc/drivers/acr122_pcsc.c @@ -81,8 +81,10 @@ #define LOG_CATEGORY "libnfc.driver.acr122" +// Internal data struct const struct pn53x_io acr122_pcsc_io; +// Prototypes char *acr122_pcsc_firmware(nfc_device *pnd); const char *supported_devices[] = { @@ -140,7 +142,7 @@ acr122_pcsc_free_scardcontext(void) * @param pszDeviceFound number of devices found. * @return true if succeeded, false otherwise. */ -bool +static bool acr122_pcsc_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound) { size_t szPos = 0; @@ -233,7 +235,7 @@ acr122_pcsc_connstring_decode(const nfc_connstring connstring, struct acr122_pcs return 3; } -nfc_device * +static nfc_device * acr122_pcsc_open(const nfc_connstring connstring) { struct acr122_pcsc_descriptor ndd; @@ -324,7 +326,7 @@ error: return NULL; } -void +static void acr122_pcsc_close(nfc_device *pnd) { SCardDisconnect(DRIVER_DATA(pnd)->hCard, SCARD_LEAVE_CARD); @@ -334,7 +336,7 @@ acr122_pcsc_close(nfc_device *pnd) nfc_device_free(pnd); } -int +static int acr122_pcsc_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout) { // FIXME: timeout is not handled @@ -405,7 +407,7 @@ acr122_pcsc_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, i return NFC_SUCCESS; } -int +static int acr122_pcsc_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szData, int timeout) { // FIXME: timeout is not handled diff --git a/libnfc/drivers/acr122_pcsc.h b/libnfc/drivers/acr122_pcsc.h index 08d252e..61b90e8 100644 --- a/libnfc/drivers/acr122_pcsc.h +++ b/libnfc/drivers/acr122_pcsc.h @@ -1,4 +1,4 @@ -/** +/*- * Public platform independent Near Field Communication (NFC) library * * Copyright (C) 2009 Roel Verdult @@ -17,24 +17,17 @@ * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see - * - * + */ + +/** * @file acr122_pcsc.h * @brief Driver for ACR122 devices (behind PC/SC daemon) */ #ifndef __NFC_DRIVER_ACR122_PCSC_H__ -# define __NFC_DRIVER_ACR122_PCSC_H__ +#define __NFC_DRIVER_ACR122_PCSC_H__ -# include - -bool acr122_pcsc_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound); - -// Functions used by developer to handle connection to this device -nfc_device *acr122_pcsc_open(const nfc_connstring connstring); -int acr122_pcsc_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout); -int acr122_pcsc_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szData, int timeout); -void acr122_pcsc_close(nfc_device *pnd); +#include extern const struct nfc_driver acr122_pcsc_driver; diff --git a/libnfc/drivers/acr122_usb.c b/libnfc/drivers/acr122_usb.c index d8a03ae..525768f 100644 --- a/libnfc/drivers/acr122_usb.c +++ b/libnfc/drivers/acr122_usb.c @@ -3,7 +3,7 @@ * * Copyright (C) 2009 Roel Verdult * Copyright (C) 2010, 2011 Romain Tartière - * Copyright (C) 2010, 2011 Romuald Conty + * Copyright (C) 2010, 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -201,11 +201,12 @@ const uint8_t acr122_usb_frame_template[] = { // APDUs instructions #define APDU_GetAdditionnalData 0xc0 +// Internal data struct const struct pn53x_io acr122_usb_io; -bool acr122_usb_get_usb_device_name(struct usb_device *dev, usb_dev_handle *udev, char *buffer, size_t len); -int acr122_usb_init(nfc_device *pnd); -int acr122_usb_ack(nfc_device *pnd); +// Prototypes +static int acr122_usb_init(nfc_device *pnd); +static int acr122_usb_ack(nfc_device *pnd); static int acr122_usb_send_apdu(nfc_device *pnd, const uint8_t ins, const uint8_t p1, const uint8_t p2, const uint8_t *const data, size_t data_len, const uint8_t le, uint8_t *out, const size_t out_size); @@ -302,8 +303,8 @@ acr122_usb_get_end_points(struct usb_device *dev, struct acr122_usb_data *data) } } -bool -acr122_usb_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound) +static bool +acr122_usb_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *device_found) { usb_init(); @@ -323,7 +324,7 @@ acr122_usb_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *p return false; } - *pszDeviceFound = 0; + *device_found = 0; uint32_t uiBusIndex = 0; struct usb_bus *bus; @@ -348,13 +349,13 @@ acr122_usb_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *p usb_dev_handle *udev = usb_open(dev); // Set configuration - // acr122_usb_get_usb_device_name (dev, udev, pnddDevices[*pszDeviceFound].acDevice, sizeof (pnddDevices[*pszDeviceFound].acDevice)); + // acr122_usb_get_usb_device_name (dev, udev, pnddDevices[*device_found].acDevice, sizeof (pnddDevices[*device_found].acDevice)); log_put(LOG_CATEGORY, NFC_PRIORITY_TRACE, "device found: Bus %s Device %s Name %s", bus->dirname, dev->filename, acr122_usb_supported_devices[n].name); usb_close(udev); - snprintf(connstrings[*pszDeviceFound], sizeof(nfc_connstring), "%s:%s:%s", ACR122_USB_DRIVER_NAME, bus->dirname, dev->filename); - (*pszDeviceFound)++; + snprintf(connstrings[*device_found], sizeof(nfc_connstring), "%s:%s:%s", ACR122_USB_DRIVER_NAME, bus->dirname, dev->filename); + (*device_found)++; // Test if we reach the maximum "wanted" devices - if ((*pszDeviceFound) == connstrings_len) { + if ((*device_found) == connstrings_len) { return true; } } @@ -397,7 +398,7 @@ acr122_usb_connstring_decode(const nfc_connstring connstring, struct acr122_usb_ return res; } -bool +static bool acr122_usb_get_usb_device_name(struct usb_device *dev, usb_dev_handle *udev, char *buffer, size_t len) { *buffer = '\0'; @@ -604,7 +605,7 @@ acr122_build_frame_from_tama(nfc_device *pnd, const uint8_t *tama, const size_t return (sizeof(struct ccid_header) + sizeof(struct apdu_header) + 1 + tama_len); } -int +static int acr122_usb_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, const int timeout) { int res; @@ -621,7 +622,7 @@ acr122_usb_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, co } #define USB_TIMEOUT_PER_PASS 200 -int +static int acr122_usb_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szDataLen, const int timeout) { off_t offset = 0; diff --git a/libnfc/drivers/acr122_usb.h b/libnfc/drivers/acr122_usb.h index 25d1950..ebf7950 100644 --- a/libnfc/drivers/acr122_usb.h +++ b/libnfc/drivers/acr122_usb.h @@ -1,8 +1,9 @@ -/** +/*- * Public platform independent Near Field Communication (NFC) library * * Copyright (C) 2009 Roel Verdult * Copyright (C) 2011 Romain Tartière + * Copyright (C) 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -16,24 +17,17 @@ * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see - * - * + */ + +/** * @file acr122_usb.h * @brief Driver for ACR122 devices using direct USB connection (without PCSC) */ #ifndef __NFC_DRIVER_ACR122_USB_H__ -# define __NFC_DRIVER_ACR122_USB_H__ +#define __NFC_DRIVER_ACR122_USB_H__ -# include - -# include - -bool acr122_usb_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound); -nfc_device *acr122_usb_connect(const nfc_connstring connstring); -int acr122_usb_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout); -int acr122_usb_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szData, int timeout); -void acr122_usb_disconnect(nfc_device *pnd); +#include extern const struct nfc_driver acr122_usb_driver; diff --git a/libnfc/drivers/acr122s.c b/libnfc/drivers/acr122s.c index f0f718b..0fc2484 100644 --- a/libnfc/drivers/acr122s.c +++ b/libnfc/drivers/acr122s.c @@ -2,6 +2,7 @@ * Public platform independent Near Field Communication (NFC) library * * Copyright (C) 2011 Anugrah Redja Kusuma + * Copyright (C) 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -46,6 +47,7 @@ #define ACR122S_DRIVER_NAME "ACR122S" #define LOG_CATEGORY "libnfc.driver.acr122s" +// Internal data structs struct acr122s_data { serial_port port; uint8_t seq; @@ -151,29 +153,8 @@ struct apdu_header { #pragma pack(pop) -#define TRACE do { printf("%s:%d\n", __func__, __LINE__); } while (0) - #define DRIVER_DATA(pnd) ((struct acr122s_data *) (pnd->driver_data)) -/** - * Print a debuggin hex string to stdout. - * - * @param caption is buffer label - * @param buf is buffer to be print - * @param buf_len is buffer length - */ -#if 0 -static void -print_hex(const char *caption, uint8_t *buf, size_t buf_len) -{ - printf("%s:", caption); - for (size_t i = 0; i < buf_len; i++) { - printf(" %02x", buf[i]); - } - puts(""); -} -#endif - /** * Fix a command frame with a valid prefix, checksum, and suffix. * @@ -466,7 +447,7 @@ acr122s_connstring_decode(const nfc_connstring connstring, struct acr122s_descri return 3; } -bool +static bool acr122s_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound) { /** @note: Due to UART bus we can't know if its really an ACR122S without @@ -545,7 +526,23 @@ acr122s_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszD return true; } -nfc_device * +static void +acr122s_close(nfc_device *pnd) +{ + acr122s_deactivate_sam(pnd); + uart_close(DRIVER_DATA(pnd)->port); + +#ifndef WIN32 + // Release file descriptors used for abort mecanism + close(DRIVER_DATA(pnd)->abort_fds[0]); + close(DRIVER_DATA(pnd)->abort_fds[1]); +#endif + + pn53x_data_free(pnd); + nfc_device_free(pnd); +} + +static nfc_device * acr122s_open(const nfc_connstring connstring) { serial_port sp; @@ -632,23 +629,7 @@ acr122s_open(const nfc_connstring connstring) return pnd; } -void -acr122s_close(nfc_device *pnd) -{ - acr122s_deactivate_sam(pnd); - uart_close(DRIVER_DATA(pnd)->port); - -#ifndef WIN32 - // Release file descriptors used for abort mecanism - close(DRIVER_DATA(pnd)->abort_fds[0]); - close(DRIVER_DATA(pnd)->abort_fds[1]); -#endif - - pn53x_data_free(pnd); - nfc_device_free(pnd); -} - -int +static int acr122s_send(nfc_device *pnd, const uint8_t *buf, const size_t buf_len, int timeout) { uart_flush_input(DRIVER_DATA(pnd)->port); @@ -665,7 +646,7 @@ acr122s_send(nfc_device *pnd, const uint8_t *buf, const size_t buf_len, int time return NFC_SUCCESS; } -int +static int acr122s_receive(nfc_device *pnd, uint8_t *buf, size_t buf_len, int timeout) { void *abort_p; diff --git a/libnfc/drivers/acr122s.h b/libnfc/drivers/acr122s.h index 8fd882c..81b0ecf 100644 --- a/libnfc/drivers/acr122s.h +++ b/libnfc/drivers/acr122s.h @@ -2,6 +2,7 @@ * Public platform independent Near Field Communication (NFC) library * * Copyright (C) 2011 Anugrah Redja Kusuma + * Copyright (C) 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -25,17 +26,8 @@ #ifndef __NFC_DRIVER_ACR122S_H__ #define __NFC_DRIVER_ACR122S_H__ -#include #include -bool acr122s_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound); - -nfc_device *acr122s_open(const nfc_connstring connstring); -void acr122s_close(nfc_device *pnd); - -int acr122s_send(nfc_device *pnd, const uint8_t *buf, size_t buf_len, int timeout); -int acr122s_receive(nfc_device *pnd, uint8_t *buf, size_t buf_len, int timeout); - extern const struct nfc_driver acr122s_driver; #endif diff --git a/libnfc/drivers/arygon.c b/libnfc/drivers/arygon.c index e163c1f..812836a 100644 --- a/libnfc/drivers/arygon.c +++ b/libnfc/drivers/arygon.c @@ -3,7 +3,7 @@ * * Copyright (C) 2009 Roel Verdult * Copyright (C) 2011 Romain Tartière - * Copyright (C) 2010, 2011 Romuald Conty + * Copyright (C) 2010, 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -70,6 +70,7 @@ #define DRIVER_DATA(pnd) ((struct arygon_data*)(pnd->driver_data)) +// Internal data structs const struct pn53x_io arygon_tama_io; struct arygon_data { @@ -81,14 +82,16 @@ struct arygon_data { #endif }; +// ARYGON frames static const uint8_t arygon_error_none[] = "FF000000\x0d\x0a"; static const uint8_t arygon_error_incomplete_command[] = "FF0C0000\x0d\x0a"; static const uint8_t arygon_error_unknown_mode[] = "FF060000\x0d\x0a"; -int arygon_reset_tama(nfc_device *pnd); +// Prototypes +int arygon_reset_tama(nfc_device *pnd); void arygon_firmware(nfc_device *pnd, char *str); -bool +static bool arygon_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound) { /** @note: Due to UART bus we can't know if its really an ARYGON without @@ -215,7 +218,23 @@ arygon_connstring_decode(const nfc_connstring connstring, struct arygon_descript return 3; } -nfc_device * +static void +arygon_close(nfc_device *pnd) +{ + // Release UART port + uart_close(DRIVER_DATA(pnd)->port); + +#ifndef WIN32 + // Release file descriptors used for abort mecanism + close(DRIVER_DATA(pnd)->iAbortFds[0]); + close(DRIVER_DATA(pnd)->iAbortFds[1]); +#endif + + pn53x_data_free(pnd); + nfc_device_free(pnd); +} + +static nfc_device * arygon_open(const nfc_connstring connstring) { struct arygon_descriptor ndd; @@ -287,25 +306,9 @@ arygon_open(const nfc_connstring connstring) return pnd; } -void -arygon_close(nfc_device *pnd) -{ - // Release UART port - uart_close(DRIVER_DATA(pnd)->port); - -#ifndef WIN32 - // Release file descriptors used for abort mecanism - close(DRIVER_DATA(pnd)->iAbortFds[0]); - close(DRIVER_DATA(pnd)->iAbortFds[1]); -#endif - - pn53x_data_free(pnd); - nfc_device_free(pnd); -} - #define ARYGON_TX_BUFFER_LEN (PN53x_NORMAL_FRAME__DATA_MAX_LEN + PN53x_NORMAL_FRAME__OVERHEAD + 1) #define ARYGON_RX_BUFFER_LEN (PN53x_EXTENDED_FRAME__DATA_MAX_LEN + PN53x_EXTENDED_FRAME__OVERHEAD) -int +static int arygon_tama_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout) { int res = 0; @@ -366,7 +369,7 @@ arygon_abort(nfc_device *pnd) return pn53x_check_communication(pnd); } -int +static int arygon_tama_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szDataLen, int timeout) { uint8_t abtRxBuf[5]; diff --git a/libnfc/drivers/arygon.h b/libnfc/drivers/arygon.h index 1d2b2bd..b64580f 100644 --- a/libnfc/drivers/arygon.h +++ b/libnfc/drivers/arygon.h @@ -1,9 +1,9 @@ -/** +/*- * Public platform independent Near Field Communication (NFC) library * * Copyright (C) 2009 Roel Verdult * Copyright (C) 2011 Romain Tartière - * Copyright (C) 2010, 2011 Romuald Conty + * Copyright (C) 2010, 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -17,26 +17,17 @@ * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see - * - * + */ + +/** * @file arygon.h * @brief Driver for PN53x-equipped ARYGON device connected using UART */ #ifndef __NFC_DRIVER_ARYGON_H__ -# define __NFC_DRIVER_ARYGON_H__ +#define __NFC_DRIVER_ARYGON_H__ -# include - -# include - -bool arygon_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound); - -nfc_device *arygon_open(const nfc_connstring connstring); -void arygon_close(nfc_device *pnd); - -int arygon_tama_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout); -int arygon_tama_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szDat, int timeouta); +#include extern const struct nfc_driver arygon_driver; diff --git a/libnfc/drivers/pn532_uart.c b/libnfc/drivers/pn532_uart.c index e008c35..cc0dbd8 100644 --- a/libnfc/drivers/pn532_uart.c +++ b/libnfc/drivers/pn532_uart.c @@ -3,7 +3,7 @@ * * Copyright (C) 2010 Roel Verdult * Copyright (C) 2011 Romain Tartière - * Copyright (C) 2010, 2011 Romuald Conty + * Copyright (C) 2010, 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -47,11 +47,8 @@ #define PN532_UART_DRIVER_NAME "pn532_uart" #define LOG_CATEGORY "libnfc.driver.pn532_uart" -int pn532_uart_ack(nfc_device *pnd); -int pn532_uart_wakeup(nfc_device *pnd); - +// Internal data structs const struct pn53x_io pn532_uart_io; - struct pn532_uart_data { serial_port port; #ifndef WIN32 @@ -61,9 +58,13 @@ struct pn532_uart_data { #endif }; +// Prototypes +int pn532_uart_ack(nfc_device *pnd); +int pn532_uart_wakeup(nfc_device *pnd); + #define DRIVER_DATA(pnd) ((struct pn532_uart_data*)(pnd->driver_data)) -bool +static bool pn532_uart_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound) { /** @note: Due to UART bus we can't know if its really a pn532 without @@ -194,7 +195,23 @@ pn532_connstring_decode(const nfc_connstring connstring, struct pn532_uart_descr return 3; } -nfc_device * +static void +pn532_uart_close(nfc_device *pnd) +{ + // Release UART port + uart_close(DRIVER_DATA(pnd)->port); + +#ifndef WIN32 + // Release file descriptors used for abort mecanism + close(DRIVER_DATA(pnd)->iAbortFds[0]); + close(DRIVER_DATA(pnd)->iAbortFds[1]); +#endif + + pn53x_data_free(pnd); + nfc_device_free(pnd); +} + +static nfc_device * pn532_uart_open(const nfc_connstring connstring) { struct pn532_uart_descriptor ndd; @@ -259,22 +276,6 @@ pn532_uart_open(const nfc_connstring connstring) return pnd; } -void -pn532_uart_close(nfc_device *pnd) -{ - // Release UART port - uart_close(DRIVER_DATA(pnd)->port); - -#ifndef WIN32 - // Release file descriptors used for abort mecanism - close(DRIVER_DATA(pnd)->iAbortFds[0]); - close(DRIVER_DATA(pnd)->iAbortFds[1]); -#endif - - pn53x_data_free(pnd); - nfc_device_free(pnd); -} - int pn532_uart_wakeup(nfc_device *pnd) { @@ -286,7 +287,7 @@ pn532_uart_wakeup(nfc_device *pnd) } #define PN532_BUFFER_LEN (PN53x_EXTENDED_FRAME__DATA_MAX_LEN + PN53x_EXTENDED_FRAME__OVERHEAD) -int +static int pn532_uart_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout) { int res = 0; @@ -347,7 +348,7 @@ pn532_uart_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, in return NFC_SUCCESS; } -int +static int pn532_uart_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szDataLen, int timeout) { uint8_t abtRxBuf[5]; @@ -512,7 +513,7 @@ const struct nfc_driver pn532_uart_driver = { .strerror = pn53x_strerror, .initiator_init = pn53x_initiator_init, - .initiator_init_secure_element = pn532_initiator_init_secure_element, // No secure-element support + .initiator_init_secure_element = pn532_initiator_init_secure_element, .initiator_select_passive_target = pn53x_initiator_select_passive_target, .initiator_poll_target = pn53x_initiator_poll_target, .initiator_select_dep_target = pn53x_initiator_select_dep_target, diff --git a/libnfc/drivers/pn532_uart.h b/libnfc/drivers/pn532_uart.h index 6e8e2be..66cbd90 100644 --- a/libnfc/drivers/pn532_uart.h +++ b/libnfc/drivers/pn532_uart.h @@ -1,9 +1,9 @@ -/** +/*- * Public platform independent Near Field Communication (NFC) library * * Copyright (C) 2010 Roel Verdult * Copyright (C) 2011 Romain Tartière - * Copyright (C) 2010, 2011 Romuald Conty + * Copyright (C) 2010, 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -17,25 +17,17 @@ * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see - * - * + */ + +/** * @file pn532_uart.h * @brief Driver for PN532 connected in UART (HSU) */ #ifndef __NFC_DRIVER_PN532_UART_H__ -# define __NFC_DRIVER_PN532_UART_H__ +#define __NFC_DRIVER_PN532_UART_H__ -# include - -# include - -bool pn532_uart_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound); - -nfc_device *pn532_uart_open(const nfc_connstring connstring); -void pn532_uart_close(nfc_device *pnd); -int pn532_uart_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout); -int pn532_uart_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szData, int timeout); +#include extern const struct nfc_driver pn532_uart_driver; diff --git a/libnfc/drivers/pn53x_usb.c b/libnfc/drivers/pn53x_usb.c index d24e963..053d31c 100644 --- a/libnfc/drivers/pn53x_usb.c +++ b/libnfc/drivers/pn53x_usb.c @@ -3,7 +3,7 @@ * * Copyright (C) 2009 Roel Verdult * Copyright (C) 2010, 2011 Romain Tartière - * Copyright (C) 2010, 2011 Romuald Conty + * Copyright (C) 2010, 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -76,6 +76,7 @@ typedef enum { SONY_RCS360 } pn53x_usb_model; +// Internal data structs struct pn53x_usb_data { usb_dev_handle *pudh; pn53x_usb_model model; @@ -86,6 +87,8 @@ struct pn53x_usb_data { }; const struct pn53x_io pn53x_usb_io; + +// Prototypes bool pn53x_usb_get_usb_device_name(struct usb_device *dev, usb_dev_handle *udev, char *buffer, size_t len); int pn53x_usb_init(nfc_device *pnd); @@ -178,7 +181,7 @@ pn53x_usb_get_end_points(struct usb_device *dev, struct pn53x_usb_data *data) } } -bool +static bool pn53x_usb_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound) { usb_init(); @@ -308,7 +311,7 @@ pn53x_usb_get_usb_device_name(struct usb_device *dev, usb_dev_handle *udev, char return false; } -nfc_device * +static nfc_device * pn53x_usb_open(const nfc_connstring connstring) { nfc_device *pnd = NULL; @@ -439,7 +442,7 @@ free_mem: return pnd; } -void +static void pn53x_usb_close(nfc_device *pnd) { pn53x_usb_ack(pnd); @@ -466,7 +469,7 @@ pn53x_usb_close(nfc_device *pnd) #define PN53X_USB_BUFFER_LEN (PN53x_EXTENDED_FRAME__DATA_MAX_LEN + PN53x_EXTENDED_FRAME__OVERHEAD) -int +static int pn53x_usb_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, const int timeout) { uint8_t abtFrame[PN53X_USB_BUFFER_LEN] = { 0x00, 0x00, 0xff }; // Every packet must start with "00 00 ff" @@ -510,7 +513,7 @@ pn53x_usb_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, con } #define USB_TIMEOUT_PER_PASS 200 -int +static int pn53x_usb_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szDataLen, const int timeout) { size_t len; diff --git a/libnfc/drivers/pn53x_usb.h b/libnfc/drivers/pn53x_usb.h index 3a290a7..81af2cf 100644 --- a/libnfc/drivers/pn53x_usb.h +++ b/libnfc/drivers/pn53x_usb.h @@ -1,8 +1,9 @@ -/** +/*- * Public platform independent Near Field Communication (NFC) library * * Copyright (C) 2009 Roel Verdult - * Copyright (C) 2011 Romain Tartière + * Copyright (C) 2010, 2011 Romain Tartière + * Copyright (C) 2010, 2011, 2012 Romuald Conty * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the @@ -16,8 +17,9 @@ * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see - * - * + */ + +/** * @file pn53x_usb.h * @brief Drive for PN53x USB devices */ @@ -25,18 +27,8 @@ #ifndef __NFC_DRIVER_PN53X_USB_H__ #define __NFC_DRIVER_PN53X_USB_H__ -#include - #include -#include "nfc-internal.h" - -bool pn53x_usb_probe(nfc_connstring connstrings[], size_t connstrings_len, size_t *pszDeviceFound); -nfc_device *pn53x_usb_open(const nfc_connstring connstring); -int pn53x_usb_send(nfc_device *pnd, const uint8_t *pbtData, const size_t szData, int timeout); -int pn53x_usb_receive(nfc_device *pnd, uint8_t *pbtData, const size_t szData, int timeout); -void pn53x_usb_close(nfc_device *pnd); - extern const struct nfc_driver pn53x_usb_driver; #endif // ! __NFC_DRIVER_PN53X_USB_H__