27 Oct, 2015

4 commits

  • Add support for proprietary commands useful mainly
    for factory testings.

    Here is a list:

    - FACTORY_MODE: Allow to set the driver into a mode where no
    secure element are activated. It does not consider any
    NFC_ATTR_VENDOR_DATA.
    - HCI_CLEAR_ALL_PIPES: Allow to execute a HCI clear all pipes
    command. It does not consider any NFC_ATTR_VENDOR_DATA.
    - HCI_DM_PUT_DATA: Allow to configure specific CLF registry as
    for example RF trimmings or low level drivers configurations
    (I2C, SPI, SWP).
    - HCI_DM_UPDATE_AID: Allow to configure an AID routing into the
    CLF routing table following RF technology, CLF mode or protocol.
    - HCI_DM_GET_INFO: Allow to retrieve CLF information.
    - HCI_DM_GET_DATA: Allow to retrieve CLF configurable data such as
    low level drivers configurations or RF trimmings.
    - HCI_DM_LOAD: Allow to load a firmware into the CLF. A complete
    packet can be more than 8KB.
    - HCI_DM_RESET: Allow to run a CLF reset in order to "commit" CLF
    configuration changes without CLF power off.
    - HCI_GET_PARAM: Allow to retrieve an HCI CLF parameter (for example
    the white list).
    - HCI_DM_FIELD_GENERATOR: Allow to generate different kind of RF
    technology. When using this command to anti-collision is done.
    - HCI_LOOPBACK: Allow to echo a command and test the Dh to CLF
    connectivity.

    Signed-off-by: Christophe Ricard
    Signed-off-by: Samuel Ortiz

    Christophe Ricard
     
  • Potentially an unexpected HCI event may occur because of a
    firmware bug. It could be transparent for the user but we should
    at least log it.

    Signed-off-by: Christophe Ricard
    Signed-off-by: Samuel Ortiz

    Christophe Ricard
     
  • Add a minor code style fixes

    Signed-off-by: Christophe Ricard
    Signed-off-by: Samuel Ortiz

    Christophe Ricard
     
  • A secure element can be activated in different order.
    The host_list is updated keeping a fixed order:
    .

    Cc: stable@vger.kernel.org
    Signed-off-by: Christophe Ricard
    Signed-off-by: Samuel Ortiz

    Christophe Ricard
     

26 Oct, 2015

5 commits


17 Aug, 2015

1 commit

  • st21nfca_hci_load_session() calls kfree_skb() on unitialized
    variables skb_pipe_info and skb_pipe_list if the call to
    nfc_hci_connect_gate() failed. Reword the error path to not use
    these variables when they are not initialized. While at it, there
    seemed to be a memory leak because skb_pipe_info was only freed
    once, after the for-loop, even though several ones were created
    by nfc_hci_send_cmd.

    Fixes: ec03ff1a8f9a
    ("NFC: st21nfca: Remove skb_pipe_list and skb_pipe_info
    useless allocation")

    Cc: stable@vger.kernel.org
    Acked-by: Christophe Ricard
    Signed-off-by: Nicolas Iooss
    Signed-off-by: Samuel Ortiz

    Christophe Ricard
     

06 Apr, 2015

3 commits


03 Feb, 2015

1 commit


28 Jan, 2015

1 commit

  • st21nfca has 1 physical SWP line and can support up to 2 secure elements
    (UICC & eSE) thanks to an external switch managed with a gpio.

    The platform integrator needs to specify thanks to 2 initialization
    properties, uicc-present and ese-present, if it is suppose to have uicc
    and/or ese. Of course if the platform does not have an external switch,
    only one kind of secure element can be supported. Those parameters are
    under platform integrator responsibilities.

    During initialization, the white_list will be set according to those
    parameters.

    The discovery_se function will assume a secure element is physically
    present according to uicc-present and ese-present values and will add it
    to the secure element list. On ese activation, the atr is retrieved to
    calculate a command exchange timeout based on the first atr(TB) value.

    The se_io will allow to transfer data over SWP. 2 kind of events may appear
    after a data is sent over:
    - ST21NFCA_EVT_TRANSMIT_DATA when receiving an apdu answer
    - ST21NFCA_EVT_WTX_REQUEST when the secure element needs more time than
    expected to compute a command. If this timeout expired, a first recovery
    tentative consist to send a simple software reset proprietary command.
    If this tentative still fail, a second recovery tentative consist to send
    a hardware reset proprietary command.
    This function is only relevant for eSE like secure element.

    This patch also change the way a pipe is referenced. There can be
    different pipe connected to the same gate with different host destination
    (ex: CONNECTIVITY). In order to keep host information every pipe are
    reference with a tuple (gate, host). In order to reduce changes, we are
    keeping unchanged the way a gate is addressed on the Terminal Host.
    However, this is working because we consider the apdu reader gate is only
    present on the eSE slot also the connectivity gate cannot give a reliable
    value; it will give the latest stored pipe value.

    Signed-off-by: Christophe Ricard
    Signed-off-by: Samuel Ortiz

    Christophe Ricard
     

27 Jan, 2015

3 commits


26 Jan, 2015

2 commits


03 Dec, 2014

1 commit


02 Dec, 2014

3 commits


28 Nov, 2014

1 commit


06 Oct, 2014

1 commit

  • …inville/wireless-next

    John W. Linville says:

    ====================
    pull request: wireless-next 2014-10-03

    Please pull tihs batch of updates intended for the 3.18 stream!

    For the iwlwifi bits, Emmanuel says:

    "I have here a few things that depend on the latest mac80211's changes:
    RRM, TPC, Quiet Period etc... Eyal keeps improving our rate control
    and we have a new device ID. This last patch should probably have
    gone to wireless.git, but at that stage, I preferred to send it to
    -next and CC stable."

    For (most of) the Atheros bits, Kalle says:

    "The only new feature is testmode support from me. Ben added a new method
    to crash the firmware with an assert for debug purposes. As usual, we
    have lots of smaller fixes from Michal. Matteo fixed a Kconfig
    dependency with debugfs. I fixed some warnings recently added to
    checkpatch."

    For the NFC bits, Samuel says:

    "We've had major updates for TI and ST Microelectronics drivers, and a
    few NCI related changes.

    For TI's trf7970a driver:

    - Target mode support for trf7970a
    - Suspend/resume support for trf7970a
    - DT properties additions to handle different quirks
    - A bunch of fixes for smartphone IOP related issues

    For ST Microelectronics' ST21NFCA and ST21NFCB drivers:

    - ISO15693 support for st21nfcb
    - checkpatch and sparse related warning fixes
    - Code cleanups and a few minor fixes

    Finally, Marvell added ISO15693 support to the NCI stack, together with a
    couple of NCI fixes."

    For the Bluetooth bits, Johan says:

    "This 3.18 pull request replaces the one I did on Monday ("bluetooth-next
    2014-09-22", which hasn't been pulled yet). The additions since the last
    request are:

    - SCO connection fix for devices not supporting eSCO
    - Cleanups regarding the SCO establishment logic
    - Remove unnecessary return value from logging functions
    - Header compression fix for 6lowpan
    - Cleanups to the ieee802154/mrf24j40 driver

    Here's a copy from previous request that this one replaces:

    '
    Here are some more patches for 3.18. They include various fixes to the
    btusb HCI driver, a fix for LE SMP, as well as adding Jukka to the
    MAINTAINERS file for generic 6LoWPAN (as requested by Alexander Aring).

    I've held on to this pull request a bit since we were waiting for a SCO
    related fix to get sorted out first. However, since the merge window is
    getting closer I decided not to wait for it. If we do get the fix sorted
    out there'll probably be a second small pull request later this week.
    '"

    And,

    "Unless 3.17 gets delayed this will probably be our last -next pull request for
    3.18. We've got:

    - New Marvell hardware supportr
    - Multicast support for 6lowpan
    - Several of 6lowpan fixes & cleanups
    - Fix for a (false-positive) lockdep warning in L2CAP
    - Minor btusb cleanup"

    On top of all that comes the usual sort of updates to ath5k, ath9k,
    ath10k, brcmfmac, mwifiex, and wil6210. This time around there are
    also a number of rtlwifi updates to enable some new hardware and
    to reconcile the in-kernel drivers with some newer releases of the
    Realtek vendor drivers. Also of note is some device tree work for
    the bcma bus.

    Please let me know if there are problems!
    ====================

    Signed-off-by: David S. Miller <davem@davemloft.net>

    David S. Miller
     

24 Sep, 2014

5 commits


08 Sep, 2014

9 commits