This is fine.  When I get more time, I will re-think handling of PXA2xx
version differences.

Stephen

pxa2xx_spi: add SSP types for the PXA27x

The PXA27x's SSP1 is not like the PXA25x's SSP, so add some more PXA27x
specific types so SSP1 works with DMA.

Signed-off-by: David Vrabel <[EMAIL PROTECTED]>
Signed-off-by: Stephen Street <[EMAIL PROTECTED]>

diff -u linux-2.6.16.28/drivers/spi/pxa2xx_spi.c linux-2.6.16.28/drivers/spi/pxa2xx_spi.c
--- linux-2.6.16.28/drivers/spi/pxa2xx_spi.c
+++ linux-2.6.16.28/drivers/spi/pxa2xx_spi.c
@@ -1260,18 +1260,20 @@
 
 		switch (platform_info->ssp_type) {
 			case PXA25x_SSP:
+			case PXA27x_SSP1:
 				DRCMRRXSSDR = DRCMR_MAPVLD
 						| drv_data->rx_channel;
 				DRCMRTXSSDR = DRCMR_MAPVLD
 						| drv_data->tx_channel;
 				break;
 			case PXA25x_NSSP:
+			case PXA27x_SSP2:
 				DRCMRRXSS2DR = DRCMR_MAPVLD
 						| drv_data->rx_channel;
 				DRCMRTXSS2DR = DRCMR_MAPVLD
 						| drv_data->tx_channel;
 				break;
-			case PXA27x_SSP:
+			case PXA27x_SSP3:
 				DRCMRRXSS3DR = DRCMR_MAPVLD
 						| drv_data->rx_channel;
 				DRCMRTXSS3DR = DRCMR_MAPVLD
@@ -1359,14 +1361,16 @@
 	if (drv_data->master_info->enable_dma) {
 		switch (drv_data->ssp_type) {
 			case PXA25x_SSP:
+			case PXA27x_SSP1:
 				DRCMRRXSSDR = 0;
 				DRCMRTXSSDR = 0;
 				break;
 			case PXA25x_NSSP:
+			case PXA27x_SSP2:
 				DRCMRRXSS2DR = 0;
 				DRCMRTXSS2DR = 0;
 				break;
-			case PXA27x_SSP:
+			case PXA27x_SSP3:
 				DRCMRRXSS3DR = 0;
 				DRCMRTXSS3DR = 0;
 				break;
diff -u linux-2.6.16.28/include/asm-arm/arch-pxa/pxa2xx_spi.h linux-2.6.16.28/include/asm-arm/arch-pxa/pxa2xx_spi.h
--- linux-2.6.16.28/include/asm-arm/arch-pxa/pxa2xx_spi.h
+++ linux-2.6.16.28/include/asm-arm/arch-pxa/pxa2xx_spi.h
@@ -25,7 +25,10 @@
 	SSP_UNDEFINED = 0,
 	PXA25x_SSP,  /* pxa 210, 250, 255, 26x */
 	PXA25x_NSSP, /* pxa 255, 26x (including ASSP) */
-	PXA27x_SSP,
+	PXA27x_SSP1,
+	PXA27x_SSP2,
+	PXA27x_SSP3,
+	PXA27x_SSP = PXA27x_SSP3, /* for compatibility */
 };
 
 /* device.platform_data for SSP controller devices */
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general

Reply via email to