linux-spi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Niclas Karlsson" <Niclas.Karlsson-AM1FMPraTHU@public.gmane.org>
To: "David Lamparter" <equinox-cEeocvCgqOOsTnJN9+BGXg@public.gmane.org>
Cc: spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: Getting alot of zero values from ads7846 using atmel_spi
Date: Mon, 18 Apr 2011 11:21:52 +0200	[thread overview]
Message-ID: <1303118512.19857.105.camel@SESTOWS194> (raw)
In-Reply-To: <20110310144145.GB4093601-sd4rSCkhOesKVZNVnti56SRbHCANfdcW@public.gmane.org>

tor 2011-03-10 klockan 15:41 +0100 skrev David Lamparter:
> On Tue, Mar 08, 2011 at 10:44:56AM +0100, Niclas Karlsson wrote:
> > Do anyone know why I read so many zeroes?
> 
> You're probably reading values faster than the chip supports. Check the
> chip documentation for a maximum readout frequency or a ready flag.
> > I have made some printk in ads7846.c to trace the problem. It seemed to
> > read more correct values when I added the printks.
> 
> A printk takes quite some time on an ARM like yours. The throttle makes
> it work...

I've made som further investigations. The atmel_spi.c driver utilize PDC
(Peripheral DMA Controller) and when I was tracing the problem I
discovered that the interrupt indicating the PDC has written the data to
memory is fired before the data actually is written to memory. If a
small delay is added after the interrupt (like a trace printk("The value
is\n")) the PDC have enough time to write the data to the memory and I
get correct values from the ADC connected to the SPI.
Thoughts how to solve this?
> 
> 
> David
> 
> P.S.: you're lucky to not get crap values - seems they got the chip
> design right...
> 
/Niclas
------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload 
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve 
application availability and disaster protection. Learn more about boosting 
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev

  parent reply	other threads:[~2011-04-18  9:21 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-08  9:44 Getting alot of zero values from ads7846 using atmel_spi Niclas Karlsson
2011-03-10 14:41 ` David Lamparter
     [not found]   ` <20110310144145.GB4093601-sd4rSCkhOesKVZNVnti56SRbHCANfdcW@public.gmane.org>
2011-04-18  9:21     ` Niclas Karlsson [this message]
2011-04-19 20:40       ` Kenneth Heitke
     [not found]         ` <4DADF35B.2000600-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2011-04-20 14:34           ` Niclas Karlsson
2011-04-20 21:11             ` Kenneth Heitke

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=1303118512.19857.105.camel@SESTOWS194 \
    --to=niclas.karlsson-am1fmprathu@public.gmane.org \
    --cc=equinox-cEeocvCgqOOsTnJN9+BGXg@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 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).