lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <200903121106.37557.wolfgang.mues@auerswald.de>
Date:	Thu, 12 Mar 2009 11:06:37 +0100
From:	Wolfgang Mües <wolfgang.mues@...rswald.de>
To:	Pierre Ossman <drzeus@...eus.cx>
Cc:	"Andrew Morton" <akpm@...ux-foundation.org>,
	"Matt Fleming" <matt@...sole-pimps.org>,
	"David Brownell" <dbrownell@...rs.sourceforge.net>,
	"Mike Frysinger" <vapier.adi@...il.com>,
	linux-kernel@...r.kernel.org
Subject: [PATCH 8/7] mmc_spi: documentation enhancement

From: Wolfgang Muees <wolfgang.mues@...rswald.de>

o Document the various pitfalls of SD cards in SPI mode.

Signed-off-by: Wolfgang Muees <wolfgang.mues@...rswald.de>

---
diff -uprN 2_6_29_rc7_patch7_unaligned_responses/drivers/mmc/host/mmc_spi.c 2_6_29_rc7_patch8_documentation/drivers/mmc/host/mmc_spi.c
--- 2_6_29_rc7_patch7_unaligned_responses/drivers/mmc/host/mmc_spi.c	2009-03-11 13:51:25.000000000 +0100
+++ 2_6_29_rc7_patch8_documentation/drivers/mmc/host/mmc_spi.c	2009-03-12 10:54:24.000000000 +0100
@@ -68,6 +68,20 @@
  *   during that time ... at least on unshared bus segments.
  */
 
+/* PITFALLS:
+ *
+ * - SD card benchmarking is done in 4 bit SD mode. Nobody care about
+ *   speed in SPI mode. So expect less throughput and longer timeouts
+ *   as in SD mode. (See core.c:mmc_set_data_timeout()).
+ * - SPI imposes a byte-aligned protocol. Expect that SD cards violate
+ *   this requirement for ALL responses:
+ *   - response after command
+ *   - data token up to CRC for read blocks
+ *   - token response after a write block
+ * - Expect that the delay (in bits) will vary according to the
+ *   buffer fill grade in the SD card controller.
+ * - Expect that CRC16 is only working for full 512 byte data blocks.
+ */
 
 /*
  * Local protocol constants, internal to data block protocols.
@@ -695,8 +709,8 @@ mmc_spi_writeblock(struct mmc_spi_host *
 	 * writes succeeded; see the standard.
 	 *
 	 * In practice, there are (even modern SDHC-)Cards which need
-	 * some bits to send the response, so we have to cope with this
-	 * situation and check the response bit-by-bit. Arggh!!!
+	 * some clock bits to send the response, so we have to cope with
+	 * this situation and check the response bit-by-bit. Arggh!!!
 	 */
 	pattern  = scratch->status[0] << 24;
 	pattern |= scratch->status[1] << 16;


---
regards

i. A. Wolfgang Mües
-- 
Auerswald GmbH & Co. KG
Hardware Development
Telefon: +49 (0)5306 9219 0
Telefax: +49 (0)5306 9219 94 
E-Mail: Wolfgang.Mues@...rswald.de
Web: http://www.auerswald.de
 
--------------------------------------------------------------
Auerswald GmbH & Co. KG, Vor den Grashöfen 1, 38162 Cremlingen
Registriert beim AG Braunschweig HRA 13289
p.h.G Auerswald Geschäftsführungsges. mbH
Registriert beim AG Braunschweig HRB 7463
Geschäftsführer: Dipl-Ing. Gerhard Auerswald
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ