Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Sep 09, 2011

  1. Patch to add Secure Download Mechanism in the libnfc

    This patch permit to support secure download update and
    also to avoid locking states in case of download failures
    Change-Id: I98aa80976a67b18562ddcff4d085ed415dac4933
    Daniel TOMAS authored jham committed
  2. Patch to add an API to load a FW image in the libnfc

    This new API permit to load the PN544 FW image when a download is needed
    at boot time.
    Change-Id: I2b3406d7ae0f0211123bd680ef914e9948c81eef
    Daniel TOMAS authored jham committed

Jul 14, 2011

  1. Patch to support multiple connection on Multiple protocol TAG

    Change-Id: I0f09869458ebbc6d77363338975754335569b6a6
    Daniel Tomas authored Nick Pelly committed

Jul 08, 2011

  1. merge intel x86 patches into gingerbread branch

    David 'Digit' Turner authored

Jul 07, 2011

  1. Don't set ARM flags for non arm builds

    Change-Id: Ia57a9aa018a4a5d1cd5b9a4bc562bc5cc061484a
    Orig-Change-Id: Iee47aaa4c341812ed6671abc8b19bdd9dc4f77cf
    Signed-off-by: Bruce Beare <>
    Bruce Beare authored David 'Digit' Turner committed

Jun 28, 2011

  1. Patch to support the new PN544 firmware events

    Change-Id: I6e5a976721fb52f2da30081276bb2ac15d27d186
    Daniel Tomas authored mik3y committed

Jun 08, 2011

  1. Sleep 500us between i2c writes, as per latest advice from NXP.

    This should fix pn544 lock-ups seen during wired-mode stress tests.
    Change-Id: I606b5909338dc889a475ad880df8646546b9ba40
    Nick Pelly authored

May 25, 2011

  1. Merge "Guard some code by LOW_LEVEL_TRACES; see c1f3313" into gingerb…

    Nick Pelly authored Android (Google) Code Review committed
  2. Guard some code by LOW_LEVEL_TRACES; see c1f3313

    Change-Id: I8c2bd923d9dedf89c784199f03fba0e2cfc12009
    Robert Tsai authored

May 23, 2011

  1. Update P2P Modes.

      to allow all possible modes (actual modes selected by Nfc.apk).
    o Fix phNfc_eP2PMode_t enum to list initiator modes.
    Change-Id: I841b6f1387ac536f47d357a0430eb9362b419810
    Nick Pelly authored
  2. Do not wait 3ms before each write.

    NXP have confirmed that 3ms delay is only needed for writes destined for SWP.
    Change-Id: I90a5229dbb738e1f00d37a052c7ac55e0e9d215c
    Nick Pelly authored

May 19, 2011

  1. Patch to enable low level traces.

    This patch permit to display the NFC frames exchanged through the I2C line.
    To enable that, you just need to enable LOW_LEVEL_TRACES macro.
    Change-Id: Ica2ff2e6d111b76c056161ec557346f23d21ada0
    Daniel Tomas authored Nick Pelly committed

May 16, 2011

  1. Fixed LLCP SAP value range.

    Valid LLCP Service Access Point values are 0x00 to 0x3F, not 0x2F.
    Before this patch, a socket with a local SAP between 0x30 and 0x3F
    was unable to communicate (operation callbacks were never called).
    Change-Id: Ic3f9b9f353a01e2682e28575152f171d7ec421e4
    Sylvain Fonteneau authored jham committed

May 12, 2011

  1. Retry i2c read 5 times on i2c read error.

    Change-Id: I9fd0291bfd8ba9d26a0c93bc14d7184a9a188b90
    Nick Pelly authored

Apr 26, 2011

  1. Patch to perform a recover in case of a transaction failure

    This patch permit to perform a recovery when a transaction failure is detected.
    To detect this exception, we are filtering the Ox57 bytes because this  means that the IRQ
    line is high but no data is available from PN544.
    Change-Id: Ibb55ea3db2bc6cdff2c5b28bbe2127250c5637a8
    Daniel Tomas authored Nick Pelly committed

Apr 17, 2011

  1. Merge "Enable P2P 106 passive (again)." into gingerbread

    Jeff Hamilton authored Android (Google) Code Review committed

Apr 16, 2011

  1. Enable P2P 106 passive (again).

    Disabling P2P 106 passive caused a large P2P discovery regression.
    Change-Id: I9856ba1a29cd717da2f578abd073b341c54fce36
    Nick Pelly authored

Apr 14, 2011

  1. Avoid missing NFCIP inbound frame.

    If a NFCIP frame is received (NXP_EVT_NFC_RCV_DATA event) before a call to
    phHal4Nfc_Receive() function, the frame was lost. This could happen if the local
    host acts as a Target and the remote peer sends its first frame too fast.
    The data is actually saved in a temporary buffer but, when the phHal4Nfc_Receive()
    is eventualy called, it triggers a callback with a status code
    NFCSTATUS_MORE_INFORMATION, which is handled as an error.
    This patch fixes this behaviour and makes sure that the correct status
    code is provided with the frame itself.
    Change-Id: I5311762ca70c71f98dea0287b0844eb1c8dddb6b
    Sylvain Fonteneau authored jham committed

Apr 08, 2011

  1. Ignore unreadable TLVs during LLCP activation and CONNECT/CC.

    The LLCP specification defines that if a TLV cannot be interpreted,
    it shall be ignored rather than generating an error.
    This patch removed all error reporting on TLV interpretation. The
    only error that can still happen is length inconsistency in the
    whole TLV array buffer.
    Change-Id: Ibf289fceb2283bfddcdc0ddee9e687ece3e90887
    Sylvain Fonteneau authored jham committed

Mar 31, 2011

  1. Handle correctly LLCP aggregated frames.

    The parsing algorithm for AGF frames has been fixed. It was previously
    only working if aggregated frames were 4-bytes long.
    The current stack only support mandatory de-aggregation. It does not
    send aggregated frames, so there won't be interop issue with previous
    This fix prevents reading erroneous de-aggregated frames and rejecting
    them using FRMR when communicating with an LLCP implementation
    using aggregation mechanism.
    Change-Id: Ia5728496a2917b6a57f478cc51dc0aaa0fcc165a
    Sylvain Fonteneau authored Nick Pelly committed

Mar 18, 2011

  1. Disable P2P target 106 passive mode.

    P2P target 106 passive appears as an ISO 14443-3A target to reader/writers
    in the field. This can confuse some terminals, especially when we also have
    card emulation turned on, since it looks like we have two -3A targets in
    the field.
    P2P target 106 passive is just one of many P2P sub-modes. We do not know of any
    P2P devices that only initiate using only 106 passive, so this should not
    present inter-op issues.
    Change-Id: I1cb84ed791a86a7f225a51806e99bab031dcb6ca
    Nick Pelly authored

Mar 12, 2011

  1. Jeff Hamilton

    Minor tweaks.

    jham authored

Mar 11, 2011

  1. Jeff Hamilton

    Fix a compilation bug with PHDBG_TRACES enabled.

    Change-Id: I6f3a96b9b063b66f735ff97c1aa63aaaad0a03b9
    jham authored

Feb 24, 2011

  1. Support formatting / makeReadOnly() of NDEF on ICODE.

    Change-Id: I2a7a185ead5de8f2b165c81dcc8ab8fb46c1ddc0
    Martijn Coenen authored jham committed
  2. Added support for NDEF on ICODE.

    This patch allows reading and writing of NDEF messages on ICODE tags.
    Change-Id: I43b4845c898c2bf268f609a5a81e991460059ff6
    Martijn Coenen authored jham committed

Feb 18, 2011

  1. Fix to prevent accidental stopping of timers.

    Time-out value of 0 is used to indicate minimum value, see e.g.
    PH_HAL4NFC_RECV_CB_TIMEOUT in phHal4Nfc_P2P.c where it is used with P2P target
    receive in case data has already been received by the PN544
    Change-Id: I9f15f2135ca003b848590fc87265edb39d85bf4c
    Jan Brands authored Nick Pelly committed
  2. Narrow down NFCSTATUS_TARGET_LOST responses from libNFC.

    During extensive testing we found that some ISO15693 tags do not react
    to some commands. However, they do send an error code to the PN544 indicating
    they do not support the command. The PN544 in turn sends one specific error code
    over the HCI interface. However, libNFC maps that error code always
    to NFCSTATUS_TARGET_LOST, which in the end maps to the application API reporting
    a TargetLostException.
    This fix maps only the timeout return values from the PN544 to NFCSTATUS_TARGET_LOST;
    all other values are mapped to NFCSTATUS_FAILED, which in turn maps to an
    IOException at API level.
    In effect, a timeout is still not the same as a target lost; libNFC does not do any
    additional internal presence check to make sure the tag is really gone, although
    it usually is. I'll submit a separate fix on packages/apps/Nfc to take care of this.
    Change-Id: If64857658d683aff29134f74b42efd99b695e634
    Martijn Coenen authored Nick Pelly committed

Feb 16, 2011

  1. danieltomas

    Disable CardEmulation phase when we try to access the Secure Element …

    …in Wired Mode.
    This fix permit to detect the Secure Element in Wired Mode, even we are in front of a RF Reader
    Change-Id: I8f87e043ff24724addd179ce025cf3d038a82a5e
    danieltomas authored Nick Pelly committed
  2. danieltomas

    Patch to support set mode during the SE Wired mode

    Change-Id: I57eaa3ccd65b89510e198f7ebf24f7266c4dad2e
    danieltomas authored Nick Pelly committed

Jan 25, 2011

  1. Fixed issue with max size NDEF message on T2T

    Change-Id: If6b490d906fcc37960a1120e9344470d68c825f6
    Jan authored Nick Pelly committed

Jan 21, 2011

  1. Support for using 3-byte length in NDEF TLV on Type 2 Tag.

    This allows for reading/writing more than 255 bytes of NDEF data on an
    NFC Forum Type 2 tag.
    This fix overrides,4907 ,
    since that fix only worked for reading.
    Change-Id: I7fb2ea1bc04f35ba6e6be56e0c89abab567e3ac7
    Martijn Coenen authored Nick Pelly committed

Jan 18, 2011

  1. Change the default IsoDep timeout to 300ms.

    Change-Id: Idcbf0ab9b982b66c39b68762129766e16017558c
    Martijn Coenen authored Nick Pelly committed
  2. Arnaud

    Erase callback when function returns immediately.

    This should avoid calling a irrelevant callback at abort.
    Change-Id: Ied8d54268613f248fd505d4b25d0ab8a0905a336
    arnaudferir authored Nick Pelly committed
  3. Arnaud

    Fixed LLCP send callback triggering.

    The phLibNfc_Llcp_Send() function is expected to trigger a callback
    when the packet is actually sent but, in some situations, the callback
    was triggered by another frame sending (such as RR or DM frames).
    This patch fixes the following socket internal flags handling:
    - pfSocketSend_Cb: set to non-NULL value when a send operation is
    - bSocketSendPending: set to TRUE if the LLCP link layer is not
    available for sending and reset to FALSE once the frame is
    actually forwarded to the LLCP link layer.
    The send callback triggering has been updated to ensure it is only
    done for the expected data frame (i.e.: send pending and already
    forwarded to link layer).
    Change-Id: Id7410ee4075fbbbc9de382abf54e89a97f6a8b37
    arnaudferir authored Nick Pelly committed
  4. Fixed erroneous LLCP frame on socket closure.

    Moved data allocation from stack memory to heap in order
    to avoid invalid memory access.
    Previously, When trying to send a DM (acknowledgment to
    socket disconnect request), the stack was allocating some
    frame data on the stack but these data were used after the
    function returned.
    Other calls to the same function  are already using variables
    allocated on heap.
    Change-Id: Id7356a876fdecdd979ed3ddc6dbe100d6e92d43d
    Sylvain Fonteneau authored Nick Pelly committed
Something went wrong with that request. Please try again.