From: David Brownell <david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
To: Daniel Ribeiro <drwyrm-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Stefan Schmidt <stefan-4Bgg8jF3iZdg9hUCZPvPmw@public.gmane.org>,
eric.y.miao-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
sameo-RWuK6r/cQWRpLGFMi4vTTA@public.gmane.org,
linux-arm-kernel-xIg/pKzrS19vn6HldHNs0ANdhmdF6hFW@public.gmane.org,
Stefan Schmidt
<stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ@public.gmane.org>
Subject: Re: [patch 05/14] mfd: PCAP2 driver
Date: Sat, 22 Nov 2008 20:59:59 -0800 [thread overview]
Message-ID: <200811222059.59806.david-b@pacbell.net> (raw)
In-Reply-To: <1227411537.3148.22.camel@brutus>
On Saturday 22 November 2008, Daniel Ribeiro wrote:
> > - You should make ezx_pcap_write() and ezx_pcap_read() switch
> > over to spi_write_then_read(), to ensure it's never doing
> > DMA to/from the stack. I see a byte-order dependency too...
>
> I tried spi_write_then_read before, but it didn't work. I supposed it
> was because it was doing 2 transfers as the second transfer rx_buf
> always came zeroed.
You may have been using it wrong. Also, verify against
current kernels ... there have been bugfixes to pxa2xx_spi.
> I see that commit
> f9b90e39cbc5c4d6ef60022fd1f25d541df0aad1 changed it to do a single
> transfer, so i will try it again.
Unless it needs the full duplex capability of SPI, then
you should be able to make write_then_read work ... on
the other hand, if you do need full duplex, then you
should address the DMA. (And byteswapping, either way.)
> > - If you're going to mark the probe() as __devinit, then mark
> > the remove() as __devexit and use __devexit_p() in the driver
> > struct.
>
> Ok. Shouldn't i use __init instead?
I wouldn't. There are ways that the probe() could be called
more than once -- e.g. after rebinding either of the relevant
SPI drivers through sysfs, or after rmmod/modprobe of the SPI
master controller driver -- and using an __init annotation
would make that point to memory that's unlikely to still hold
that code.
- Dave
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
WARNING: multiple messages have this Message-ID (diff)
From: David Brownell <david-b@pacbell.net>
To: Daniel Ribeiro <drwyrm@gmail.com>
Cc: Stefan Schmidt <stefan@datenfreihafen.org>,
spi-devel-general@lists.sourceforge.net,
Stefan Schmidt <stefan@openmoko.org>,
eric.y.miao@gmail.com, linux-kernel@vger.kernel.org,
sameo@openedhand.com, linux-arm-kernel@lists.arm.linux.org.uk
Subject: Re: [spi-devel-general] [patch 05/14] mfd: PCAP2 driver
Date: Sat, 22 Nov 2008 20:59:59 -0800 [thread overview]
Message-ID: <200811222059.59806.david-b@pacbell.net> (raw)
In-Reply-To: <1227411537.3148.22.camel@brutus>
On Saturday 22 November 2008, Daniel Ribeiro wrote:
> > - You should make ezx_pcap_write() and ezx_pcap_read() switch
> > over to spi_write_then_read(), to ensure it's never doing
> > DMA to/from the stack. I see a byte-order dependency too...
>
> I tried spi_write_then_read before, but it didn't work. I supposed it
> was because it was doing 2 transfers as the second transfer rx_buf
> always came zeroed.
You may have been using it wrong. Also, verify against
current kernels ... there have been bugfixes to pxa2xx_spi.
> I see that commit
> f9b90e39cbc5c4d6ef60022fd1f25d541df0aad1 changed it to do a single
> transfer, so i will try it again.
Unless it needs the full duplex capability of SPI, then
you should be able to make write_then_read work ... on
the other hand, if you do need full duplex, then you
should address the DMA. (And byteswapping, either way.)
> > - If you're going to mark the probe() as __devinit, then mark
> > the remove() as __devexit and use __devexit_p() in the driver
> > struct.
>
> Ok. Shouldn't i use __init instead?
I wouldn't. There are ways that the probe() could be called
more than once -- e.g. after rebinding either of the relevant
SPI drivers through sysfs, or after rmmod/modprobe of the SPI
master controller driver -- and using an __init annotation
would make that point to memory that's unlikely to still hold
that code.
- Dave
next prev parent reply other threads:[~2008-11-23 4:59 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20081121160403.073751031@dodger.lab.datenfreihafen.org>
2008-11-21 16:04 ` [patch 05/14] mfd: PCAP2 driver stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ
2008-11-21 16:04 ` stefan
[not found] ` <20081121160521.016544616-cQQG9CVUopzFITZdfPi31ZcF1vblOVnWhIvA6WVW+J8@public.gmane.org>
2008-11-22 5:25 ` David Brownell
2008-11-22 5:25 ` [spi-devel-general] " David Brownell
2008-11-22 14:01 ` Eric Miao
[not found] ` <f17812d70811220601p1d7af668mf3265224179753ab-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-11-22 15:54 ` Daniel Ribeiro
2008-11-22 15:54 ` [spi-devel-general] " Daniel Ribeiro
2008-11-22 19:08 ` David Brownell
2008-11-22 19:08 ` [spi-devel-general] " David Brownell
[not found] ` <200811221108.54331.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2008-11-22 23:29 ` Stefan Schmidt
2008-11-22 23:29 ` [spi-devel-general] " Stefan Schmidt
[not found] ` <200811212125.49068.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2008-11-22 17:12 ` Daniel Ribeiro
2008-11-22 17:12 ` [spi-devel-general] " Daniel Ribeiro
2008-11-22 19:19 ` David Brownell
2008-11-22 19:19 ` [spi-devel-general] " David Brownell
[not found] ` <200811221119.27981.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2008-11-22 23:33 ` Stefan Schmidt
2008-11-22 23:33 ` [spi-devel-general] " Stefan Schmidt
[not found] ` <20081122233356.GC24437-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ@public.gmane.org>
2008-11-22 23:58 ` David Brownell
2008-11-22 23:58 ` [spi-devel-general] " David Brownell
[not found] ` <200811221558.03915.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2008-11-23 0:33 ` Stefan Schmidt
2008-11-23 0:33 ` [spi-devel-general] " Stefan Schmidt
[not found] ` <20081123003306.GE24437-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ@public.gmane.org>
2008-11-23 2:19 ` David Brownell
2008-11-23 2:19 ` [spi-devel-general] " David Brownell
[not found] ` <200811221819.53186.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2008-11-23 3:38 ` Daniel Ribeiro
2008-11-23 3:38 ` [spi-devel-general] " Daniel Ribeiro
2008-11-23 4:59 ` David Brownell [this message]
2008-11-23 4:59 ` David Brownell
[not found] ` <200811222059.59806.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2008-11-23 7:06 ` Daniel Ribeiro
2008-11-23 7:06 ` [spi-devel-general] " Daniel Ribeiro
2008-11-23 8:26 ` David Brownell
2008-11-23 8:26 ` [spi-devel-general] " David Brownell
2008-11-21 16:04 ` [patch 08/14] input: PCAP2 based touchscreen driver stefan
2008-11-21 16:04 ` stefan
2008-11-21 17:05 ` Dmitry Torokhov
2008-11-22 0:00 ` Stefan Schmidt
2009-04-21 2:18 ` Dmitry Torokhov
2009-04-21 2:38 ` Daniel Ribeiro
2009-04-21 2:38 ` Daniel Ribeiro
2008-11-21 16:04 ` [patch 10/14] LED: PCAP2 based LED driver stefan
2008-11-22 14:08 ` Eric Miao
2008-11-22 15:46 ` Daniel Ribeiro
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=200811222059.59806.david-b@pacbell.net \
--to=david-b-ybekhbn/0ldr7s880joybq@public.gmane.org \
--cc=drwyrm-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=eric.y.miao-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=linux-arm-kernel-xIg/pKzrS19vn6HldHNs0ANdhmdF6hFW@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=sameo-RWuK6r/cQWRpLGFMi4vTTA@public.gmane.org \
--cc=spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=stefan-4Bgg8jF3iZdg9hUCZPvPmw@public.gmane.org \
--cc=stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ@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.