All of lore.kernel.org
 help / color / mirror / Atom feed
From: Baruch Siach <baruch-NswTu9S1W3P6gbPvEgmw2w@public.gmane.org>
To: David Brownell <david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
Cc: spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: [PATCH] spi: fix m25p80 when the cs_change hint is honored
Date: Wed, 20 May 2009 07:55:07 +0300	[thread overview]
Message-ID: <20090520045506.GD28870@tarshish> (raw)
In-Reply-To: <200905192134.14316.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>

Hi David,

On Tue, May 19, 2009 at 09:34:14PM -0700, David Brownell wrote:
> Normal behavior of a spi_message is to keep the chipselect active
> during the entire message, then deactivate it after the last transfer.
> Setting the cs_change flag *changes* that behavior ... allowing either
> (a) brief mid-message deselection, usually to make a message hold a
> composite transaction, or else (b) hinting that immediate deselection
> isn't neccessary, as a possible performance tweak for some drivers.
> 
> Note that while (a) is mandatory -- drivers that can't do it must
> reject the messages using it -- (b) is optional.  When the next
> message goes to a different device, obviously the chip selection
> lines will need to change.

Thanks for the clarification.

If I understood correctly then, cs_change has two opposite meanings:

1. If cs_change != 0 in spi_transfer that is not the last in the current 
   spi_message, then deactivate the chip select between this spi_transfer and 
   the next.

2. If cs_change != 0 in spi_transfer that is that last in the current 
   spi_message, then the SPI controller is allowed to NOT deactivate the chip 
   select after the current spi_message.

Is this correct? If so would a clarification of the relevant text at 
include/linux/spi/spi.h be accepted?

baruch

-- 
                                                     ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch-NswTu9S1W3P6gbPvEgmw2w@public.gmane.org - tel: +972.2.679.5364, http://www.tkos.co.il -

------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables 
unlimited royalty-free distribution of the report engine 
for externally facing server and web deployment. 
http://p.sf.net/sfu/businessobjects

  parent reply	other threads:[~2009-05-20  4:55 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-19 11:09 [PATCH] spi: fix m25p80 when the cs_change hint is honored Baruch Siach
     [not found] ` <1242731340-12160-1-git-send-email-baruch-NswTu9S1W3P6gbPvEgmw2w@public.gmane.org>
2009-05-20  4:34   ` David Brownell
     [not found]     ` <200905192134.14316.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2009-05-20  4:55       ` Baruch Siach [this message]
2009-05-20  5:09         ` David Brownell
     [not found]           ` <200905192209.19125.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2009-05-20  5:25             ` Baruch Siach

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=20090520045506.GD28870@tarshish \
    --to=baruch-nswtu9s1w3p6gbpvegmw2w@public.gmane.org \
    --cc=david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org \
    --cc=spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.