spi: atmel_dataflash: Simplify AT91F_SpiEnable implementation

Refactor the code a bit to make it better in readability.
Remove the comments because now the intention of the code is pretty clear.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
This commit is contained in:
Axel Lin 2014-02-21 08:55:47 +08:00 committed by Jagannadha Sutradharudu Teki
parent c6136aad91
commit 7dfc4dbd2d
1 changed files with 12 additions and 19 deletions

View File

@ -102,33 +102,26 @@ void AT91F_SpiEnable(int cs)
{
unsigned long mode;
mode = readl(ATMEL_BASE_SPI0 + AT91_SPI_MR);
mode &= ~AT91_SPI_PCS;
switch (cs) {
case 0: /* Configure SPI CS0 for Serial DataFlash AT45DBxx */
mode = readl(ATMEL_BASE_SPI0 + AT91_SPI_MR);
mode &= 0xFFF0FFFF;
writel(mode | ((AT91_SPI_PCS0_DATAFLASH_CARD<<16) & AT91_SPI_PCS),
ATMEL_BASE_SPI0 + AT91_SPI_MR);
case 0:
mode |= AT91_SPI_PCS0_DATAFLASH_CARD << 16;
break;
case 1: /* Configure SPI CS1 for Serial DataFlash AT45DBxx */
mode = readl(ATMEL_BASE_SPI0 + AT91_SPI_MR);
mode &= 0xFFF0FFFF;
writel(mode | ((AT91_SPI_PCS1_DATAFLASH_CARD<<16) & AT91_SPI_PCS),
ATMEL_BASE_SPI0 + AT91_SPI_MR);
case 1:
mode |= AT91_SPI_PCS1_DATAFLASH_CARD << 16;
break;
case 2: /* Configure SPI CS2 for Serial DataFlash AT45DBxx */
mode = readl(ATMEL_BASE_SPI0 + AT91_SPI_MR);
mode &= 0xFFF0FFFF;
writel(mode | ((AT91_SPI_PCS2_DATAFLASH_CARD<<16) & AT91_SPI_PCS),
ATMEL_BASE_SPI0 + AT91_SPI_MR);
case 2:
mode |= AT91_SPI_PCS2_DATAFLASH_CARD << 16;
break;
case 3:
mode = readl(ATMEL_BASE_SPI0 + AT91_SPI_MR);
mode &= 0xFFF0FFFF;
writel(mode | ((AT91_SPI_PCS3_DATAFLASH_CARD<<16) & AT91_SPI_PCS),
ATMEL_BASE_SPI0 + AT91_SPI_MR);
mode |= AT91_SPI_PCS3_DATAFLASH_CARD << 16;
break;
}
writel(mode, ATMEL_BASE_SPI0 + AT91_SPI_MR);
/* SPI_Enable */
writel(AT91_SPI_SPIEN, ATMEL_BASE_SPI0 + AT91_SPI_CR);
}