diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-12-04 02:52:14 -0500 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-12-04 02:52:14 -0500 |
| commit | cb9c34e6d090d376b77becaa5d29a65dec7f4272 (patch) | |
| tree | 3678abce20d6825aebe3fec218057d4131e13fd6 /drivers/spi/atmel_spi.c | |
| parent | 470c66239ef0336429b35345f3f615d47341e13b (diff) | |
| parent | 061e41fdb5047b1fb161e89664057835935ca1d2 (diff) | |
Merge commit 'v2.6.28-rc7' into core/locking
Diffstat (limited to 'drivers/spi/atmel_spi.c')
| -rw-r--r-- | drivers/spi/atmel_spi.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/spi/atmel_spi.c b/drivers/spi/atmel_spi.c index 02f9320f3efc..8abae4ad0fa5 100644 --- a/drivers/spi/atmel_spi.c +++ b/drivers/spi/atmel_spi.c | |||
| @@ -766,6 +766,7 @@ static int __init atmel_spi_probe(struct platform_device *pdev) | |||
| 766 | /* Initialize the hardware */ | 766 | /* Initialize the hardware */ |
| 767 | clk_enable(clk); | 767 | clk_enable(clk); |
| 768 | spi_writel(as, CR, SPI_BIT(SWRST)); | 768 | spi_writel(as, CR, SPI_BIT(SWRST)); |
| 769 | spi_writel(as, CR, SPI_BIT(SWRST)); /* AT91SAM9263 Rev B workaround */ | ||
| 769 | spi_writel(as, MR, SPI_BIT(MSTR) | SPI_BIT(MODFDIS)); | 770 | spi_writel(as, MR, SPI_BIT(MSTR) | SPI_BIT(MODFDIS)); |
| 770 | spi_writel(as, PTCR, SPI_BIT(RXTDIS) | SPI_BIT(TXTDIS)); | 771 | spi_writel(as, PTCR, SPI_BIT(RXTDIS) | SPI_BIT(TXTDIS)); |
| 771 | spi_writel(as, CR, SPI_BIT(SPIEN)); | 772 | spi_writel(as, CR, SPI_BIT(SPIEN)); |
| @@ -782,6 +783,7 @@ static int __init atmel_spi_probe(struct platform_device *pdev) | |||
| 782 | 783 | ||
| 783 | out_reset_hw: | 784 | out_reset_hw: |
| 784 | spi_writel(as, CR, SPI_BIT(SWRST)); | 785 | spi_writel(as, CR, SPI_BIT(SWRST)); |
| 786 | spi_writel(as, CR, SPI_BIT(SWRST)); /* AT91SAM9263 Rev B workaround */ | ||
| 785 | clk_disable(clk); | 787 | clk_disable(clk); |
| 786 | free_irq(irq, master); | 788 | free_irq(irq, master); |
| 787 | out_unmap_regs: | 789 | out_unmap_regs: |
| @@ -805,6 +807,7 @@ static int __exit atmel_spi_remove(struct platform_device *pdev) | |||
| 805 | spin_lock_irq(&as->lock); | 807 | spin_lock_irq(&as->lock); |
| 806 | as->stopping = 1; | 808 | as->stopping = 1; |
| 807 | spi_writel(as, CR, SPI_BIT(SWRST)); | 809 | spi_writel(as, CR, SPI_BIT(SWRST)); |
| 810 | spi_writel(as, CR, SPI_BIT(SWRST)); /* AT91SAM9263 Rev B workaround */ | ||
| 808 | spi_readl(as, SR); | 811 | spi_readl(as, SR); |
| 809 | spin_unlock_irq(&as->lock); | 812 | spin_unlock_irq(&as->lock); |
| 810 | 813 | ||
