spi-ep93xx.c (53279f36dccffc26ff536003fd6bb97cc21c3b82) | spi-ep93xx.c (fd4a319bc933ae93e68935b21924a9ca4ba2d060) |
---|---|
1/* 2 * Driver for Cirrus Logic EP93xx SPI controller. 3 * 4 * Copyright (C) 2010-2011 Mika Westerberg 5 * 6 * Explicit FIFO handling code was inspired by amba-pl022 driver. 7 * 8 * Chip select support using other than built-in GPIOs by H. Hartley Sweeten. --- 1009 unchanged lines hidden (view full) --- 1018 dma_release_channel(espi->dma_tx); 1019 sg_free_table(&espi->tx_sgt); 1020 } 1021 1022 if (espi->zeropage) 1023 free_page((unsigned long)espi->zeropage); 1024} 1025 | 1/* 2 * Driver for Cirrus Logic EP93xx SPI controller. 3 * 4 * Copyright (C) 2010-2011 Mika Westerberg 5 * 6 * Explicit FIFO handling code was inspired by amba-pl022 driver. 7 * 8 * Chip select support using other than built-in GPIOs by H. Hartley Sweeten. --- 1009 unchanged lines hidden (view full) --- 1018 dma_release_channel(espi->dma_tx); 1019 sg_free_table(&espi->tx_sgt); 1020 } 1021 1022 if (espi->zeropage) 1023 free_page((unsigned long)espi->zeropage); 1024} 1025 |
1026static int __devinit ep93xx_spi_probe(struct platform_device *pdev) | 1026static int ep93xx_spi_probe(struct platform_device *pdev) |
1027{ 1028 struct spi_master *master; 1029 struct ep93xx_spi_info *info; 1030 struct ep93xx_spi *espi; 1031 struct resource *res; 1032 int irq; 1033 int error; 1034 --- 98 unchanged lines hidden (view full) --- 1133 clk_put(espi->clk); 1134fail_release_master: 1135 spi_master_put(master); 1136 platform_set_drvdata(pdev, NULL); 1137 1138 return error; 1139} 1140 | 1027{ 1028 struct spi_master *master; 1029 struct ep93xx_spi_info *info; 1030 struct ep93xx_spi *espi; 1031 struct resource *res; 1032 int irq; 1033 int error; 1034 --- 98 unchanged lines hidden (view full) --- 1133 clk_put(espi->clk); 1134fail_release_master: 1135 spi_master_put(master); 1136 platform_set_drvdata(pdev, NULL); 1137 1138 return error; 1139} 1140 |
1141static int __devexit ep93xx_spi_remove(struct platform_device *pdev) | 1141static int ep93xx_spi_remove(struct platform_device *pdev) |
1142{ 1143 struct spi_master *master = platform_get_drvdata(pdev); 1144 struct ep93xx_spi *espi = spi_master_get_devdata(master); 1145 1146 spin_lock_irq(&espi->lock); 1147 espi->running = false; 1148 spin_unlock_irq(&espi->lock); 1149 --- 25 unchanged lines hidden (view full) --- 1175} 1176 1177static struct platform_driver ep93xx_spi_driver = { 1178 .driver = { 1179 .name = "ep93xx-spi", 1180 .owner = THIS_MODULE, 1181 }, 1182 .probe = ep93xx_spi_probe, | 1142{ 1143 struct spi_master *master = platform_get_drvdata(pdev); 1144 struct ep93xx_spi *espi = spi_master_get_devdata(master); 1145 1146 spin_lock_irq(&espi->lock); 1147 espi->running = false; 1148 spin_unlock_irq(&espi->lock); 1149 --- 25 unchanged lines hidden (view full) --- 1175} 1176 1177static struct platform_driver ep93xx_spi_driver = { 1178 .driver = { 1179 .name = "ep93xx-spi", 1180 .owner = THIS_MODULE, 1181 }, 1182 .probe = ep93xx_spi_probe, |
1183 .remove = __devexit_p(ep93xx_spi_remove), | 1183 .remove = ep93xx_spi_remove, |
1184}; 1185module_platform_driver(ep93xx_spi_driver); 1186 1187MODULE_DESCRIPTION("EP93xx SPI Controller driver"); 1188MODULE_AUTHOR("Mika Westerberg <mika.westerberg@iki.fi>"); 1189MODULE_LICENSE("GPL"); 1190MODULE_ALIAS("platform:ep93xx-spi"); | 1184}; 1185module_platform_driver(ep93xx_spi_driver); 1186 1187MODULE_DESCRIPTION("EP93xx SPI Controller driver"); 1188MODULE_AUTHOR("Mika Westerberg <mika.westerberg@iki.fi>"); 1189MODULE_LICENSE("GPL"); 1190MODULE_ALIAS("platform:ep93xx-spi"); |