From: dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
To: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Cc: Dirk Brandewie <dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: [PATCH 08/11] spi-dw: Ensure fifo lenght is set.
Date: Wed, 22 Jun 2011 19:00:10 -0700 [thread overview]
Message-ID: <1308794413-11069-9-git-send-email-dirk.brandewie@gmail.com> (raw)
In-Reply-To: <1308794413-11069-1-git-send-email-dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
From: Dirk Brandewie <dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Bug on fifo_len not being set. The fifo sizing routine does not work
since the txfltr register can not be written while the controller is
enabled. The max value of txfltr can be larger than the fifo. The
register allows values upto 0x3f (63) the fifo depth on the Intel
SOC's if 40
Signed-off-by: Dirk Brandewie <dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
drivers/spi/spi-dw.c | 18 ++----------------
1 files changed, 2 insertions(+), 16 deletions(-)
diff --git a/drivers/spi/spi-dw.c b/drivers/spi/spi-dw.c
index ad92826..cc38aa0 100644
--- a/drivers/spi/spi-dw.c
+++ b/drivers/spi/spi-dw.c
@@ -776,25 +776,11 @@ static int destroy_queue(struct spi_dw *dws)
/* Restart the controller, disable all interrupts, clean rx fifo */
static void spi_dw_hw_init(struct spi_dw *dws)
{
+ BUG_ON(!dws->fifo_len);
+
spi_dw_disable(dws);
spi_dw_mask_intr(dws, 0xff);
spi_dw_enable(dws);
-
- /*
- * Try to detect the FIFO depth if not set by interface driver,
- * the depth could be from 2 to 256 from HW spec
- */
- if (!dws->fifo_len) {
- u32 fifo;
- for (fifo = 2; fifo <= 257; fifo++) {
- dw_writew(dws, txfltr, fifo);
- if (fifo != dw_readw(dws, txfltr))
- break;
- }
-
- dws->fifo_len = (fifo == 257) ? 0 : fifo;
- dw_writew(dws, txfltr, 0);
- }
}
int __devinit spi_dw_add_host(struct spi_dw *dws)
--
1.7.3.4
------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger.
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Data protection magic?
Nope - It's vRanger. Get your free trial download today.
http://p.sf.net/sfu/quest-sfdev2dev
next prev parent reply other threads:[~2011-06-23 2:00 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-23 2:00 [PATCH 00/11] RFC spi-dw updates dirk.brandewie
2011-06-23 2:00 ` [PATCH 01/11] spi-dw: expose platform data stucture dirk.brandewie
2011-06-23 3:47 ` Grant Likely
2011-06-23 4:00 ` Dirk Brandewie
2011-06-23 4:03 ` glikely@secretlab.ca
2011-06-23 4:37 ` Dirk Brandewie
2011-06-23 5:06 ` glikely@secretlab.ca
2011-06-23 5:16 ` Dirk Brandewie
[not found] ` <1308794413-11069-1-git-send-email-dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-06-23 2:00 ` [PATCH 02/11] spi-dw: update function naming convention to match file naming dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 2:00 ` [PATCH 03/11] spi-dw: change MRST prefix to generic prefix dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 2:00 ` [PATCH 04/11] spi-dw: remove unused definition dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 2:00 ` [PATCH 05/11] spi-dw: split spi_dw_enable_chip() into spi_dw_enable()/spi_dw_disable() dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 2:00 ` [PATCH 06/11] spi-dw: Force error on out of range chip select dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 3:51 ` Grant Likely
2011-06-23 4:13 ` Dirk Brandewie
2011-06-23 2:00 ` [PATCH 07/11] spi-dw: Set number of available chip selects correctly dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 3:53 ` Grant Likely
2011-06-23 2:00 ` dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w [this message]
2011-06-23 2:41 ` [PATCH 08/11] spi-dw: Ensure fifo lenght is set Feng Tang
2011-06-23 3:01 ` Dirk Brandewie
2011-06-23 3:21 ` Feng Tang
2011-06-23 3:55 ` Grant Likely
2011-06-23 4:20 ` Dirk Brandewie
2011-06-23 2:00 ` [PATCH 09/11] spi-dw: Fix condition in spi_dw_{writer/reader} dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 2:45 ` Feng Tang
2011-06-23 3:09 ` Dirk Brandewie
2011-06-23 3:25 ` Feng Tang
2011-06-23 3:30 ` Dirk Brandewie
2011-06-23 5:09 ` Feng Tang
2011-06-23 2:00 ` [PATCH 11/11] spi-dw: remove noop else clause dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23 2:47 ` Feng Tang
2011-06-23 3:13 ` Dirk Brandewie
2011-06-23 2:00 ` [PATCH 10/11] spi-dw: Move checking of max_speed_hz value to be a prerequisite in spi_dw_setup dirk.brandewie
2011-06-23 2:39 ` [PATCH 00/11] RFC spi-dw updates Feng Tang
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=1308794413-11069-9-git-send-email-dirk.brandewie@gmail.com \
--to=dirk.brandewie-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@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).