LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Robert Dolca <robert.dolca@gmail.com>
To: Samuel Ortiz <sameo@linux.intel.com>
Cc: Robert Dolca <robert.dolca@intel.com>,
	linux-nfc@ml01.01.org, netdev@vger.kernel.org,
	linux-wireless@vger.kernel.org,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"David S. Miller" <davem@davemloft.net>
Subject: Re: [linux-nfc] [PATCH 8/8] NFC: Add Intel FieldsPeak NFC solution driver
Date: Wed, 1 Apr 2015 18:35:31 +0300	[thread overview]
Message-ID: <CAFPB+Yf1jWX=tv+feZRonZEprjXwHdD8mMXAupdm5XrDaYvWMA@mail.gmail.com> (raw)
In-Reply-To: <20150326003025.GE10954@ribalta.home>

On Thu, Mar 26, 2015 at 2:30 AM, Samuel Ortiz <sameo@linux.intel.com> wrote:
>> +     /* If a patch was applied the new version is checked */
>> +     if (patched) {
>> +             r = nci_init(ndev);
>> +             if (r)
>> +                     goto error;
>> +
>> +             r = fdp_nci_get_versions(ndev);
>> +             if (r)
>> +                     goto error;
>> +
>> +             if (info->otp_version != info->otp_patch_version ||
>> +                 info->ram_version != info->ram_patch_version) {
>> +                     pr_err("FRP firmware update failed");
>> +                     r = -EINVAL;
>> +             }
>> +     }
>> +
>> +     /* Check if the device has VSC */
>> +     if (fdp_post_fw_vsc_cfg[0]) {
>> +             /* Set the vendor specific configuration */
>> +             r = fdp_nci_set_production_data(ndev, fdp_post_fw_vsc_cfg[3],
>> +                                             &fdp_post_fw_vsc_cfg[4]);
>> +             if (r)
>> +                     goto error;
>> +     }
>> +
>> +     /* Set clock type and frequency */
>> +     r = fdp_nci_set_clock(ndev, 0, 26000);
>> +     if (r)
>> +             goto error;
> The version checking, production data setting and clock setting should
> be part of a post setup notification call. Please add an nci_dev
> notify() ops that could get called on certain events, for example when
> NCI is up. Bluetooth's HCI does something along those lines already.
> From this notification hook you could implement this post setup stage.
>
> The idea is for your setup routine to only do firmware update and
> nothing else. It will make it shorter, and thus easier to read as well.

Hi Samuel,

If the RAM patch wasn't applied successfully the device can't be used
so the setup function should fail.
If the production data (specifically the clock frequency) is not set
the device can not be used. If the user space tries to start polling
before the notification is sent the polling will fail. Having it
called later would mean introducing a race condition.

Cheers,
Robert

  reply	other threads:[~2015-04-01 15:35 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-24 10:01 [PATCH 0/8] Adds " Robert Dolca
2015-02-24 10:01 ` [PATCH 1/8] NFC: NCI: Allow connection close with dev down Robert Dolca
2015-03-26  0:29   ` Samuel Ortiz
2015-03-31 14:03     ` [linux-nfc] " Robert Dolca
2015-05-24 17:07       ` Samuel Ortiz
2015-08-28 14:05         ` Robert Dolca
2015-02-24 10:01 ` [PATCH 2/8] NFC: NCI: Exporting NFC command and data send API Robert Dolca
2015-02-24 10:01 ` [PATCH 3/8] NFC: NCI: Adds NCI init and reset API for drivers Robert Dolca
2015-03-26  0:29   ` Samuel Ortiz
2015-03-31 14:05     ` [linux-nfc] " Robert Dolca
2015-05-24 17:07       ` Samuel Ortiz
2015-02-24 10:01 ` [PATCH 4/8] NFC: NCI: Add a special nci_request for driver Robert Dolca
2015-03-26  0:29   ` Samuel Ortiz
2015-03-31 14:07     ` [linux-nfc] " Robert Dolca
2015-02-24 10:01 ` [PATCH 5/8] NFC: NCI: Don't call setup if previous NCI request failed Robert Dolca
2015-03-26  0:29   ` Samuel Ortiz
2015-02-24 10:01 ` [PATCH 6/8] NFC: NCI: Add function to get max packet size for conn Robert Dolca
2015-02-24 10:01 ` [PATCH 7/8] NFC: NCI: Adds a way to get the new connection ID Robert Dolca
2015-02-24 10:01 ` [PATCH 8/8] NFC: Add Intel FieldsPeak NFC solution driver Robert Dolca
2015-02-24 10:33   ` Johannes Berg
2015-02-24 10:46     ` Robert Dolca
2015-03-26  0:30   ` Samuel Ortiz
2015-04-01 15:35     ` Robert Dolca [this message]
2015-05-24 17:08       ` [linux-nfc] " Samuel Ortiz
2015-03-26 11:20   ` Samuel Ortiz
2015-03-26 13:45   ` Mika Westerberg
2015-02-24 16:14 ` [PATCH 0/8] Adds " Greg Rose
2015-02-24 16:25   ` Daniel Baluta
2015-02-24 16:27     ` Greg Rose

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAFPB+Yf1jWX=tv+feZRonZEprjXwHdD8mMXAupdm5XrDaYvWMA@mail.gmail.com' \
    --to=robert.dolca@gmail.com \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfc@ml01.01.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=robert.dolca@intel.com \
    --cc=sameo@linux.intel.com \
    --subject='Re: [linux-nfc] [PATCH 8/8] NFC: Add Intel FieldsPeak NFC solution driver' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).