Title: [7683] trunk/drivers/spi/spi_bfin5xx.c: [#5630] ethernet driver smc91x fail to wake up by uart in bf533-stamp
Revision
7683
Author
hennerich
Date
2009-10-20 08:29:01 -0400 (Tue, 20 Oct 2009)

Log Message

[#5630] ethernet driver smc91x fail to wake up by uart in bf533-stamp
On the BF533-STAMP board there is some external logic that switches the
Asynchronous Memory Bank 3 between Flash and SMSC91c111 Ethernet
controller. This logic is controlled by GPIO_PF0 which is also the same
PIN as SPI-SPISS Slave Mode Select. The SPI driver defaults the SPI
Control register to Slave Mode - but doesn't enable the SPI. In case the
SPI bus driver wasn't utilized and is then suspended and resumed during
the PM state transitions - the SPI resume code enables the SPI - and
this will case the SPI-SPISS = GPIO_PF0 being driven low. In return this
causes the Flash being enabled and the smc91x Ethernet driver accesses
Flash instead of the Ethernet controller.

Modified Paths

Diff

Modified: trunk/drivers/spi/spi_bfin5xx.c (7682 => 7683)


--- trunk/drivers/spi/spi_bfin5xx.c	2009-10-20 10:31:35 UTC (rev 7682)
+++ trunk/drivers/spi/spi_bfin5xx.c	2009-10-20 12:29:01 UTC (rev 7683)
@@ -1439,7 +1439,7 @@
 	/* Reset SPI registers. If these registers were used by the boot loader,
 	 * the sky may fall on your head if you enable the dma controller.
 	 */
-	write_CTRL(drv_data, 0x0400);
+	write_CTRL(drv_data, BIT_CTL_CPHA | BIT_CTL_MASTER);
 	write_FLAG(drv_data, 0xFF00);
 
 	/* Register with the SPI framework */
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to