aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Dooks <ben-linux@fluff.org>2008-04-15 14:34:45 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-15 19:35:41 -0700
commit50f426b55d919dd017af35bb6a08753d1f262920 (patch)
treee7b55f8e9336fe75923b8c08a56d886c4620c322
parentspi: spi_s3c24xx driver must init completion (diff)
downloadlinux-dev-50f426b55d919dd017af35bb6a08753d1f262920.tar.xz
linux-dev-50f426b55d919dd017af35bb6a08753d1f262920.zip
spi: spi_s3c24xx must initialize bus_num
Pass the bus number we expect the S3C24XX SPI driver to attach to via the platform data. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/spi/spi_s3c24xx.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/spi/spi_s3c24xx.c b/drivers/spi/spi_s3c24xx.c
index 6f2c79da984d..80719ef54365 100644
--- a/drivers/spi/spi_s3c24xx.c
+++ b/drivers/spi/spi_s3c24xx.c
@@ -238,6 +238,7 @@ static irqreturn_t s3c24xx_spi_irq(int irq, void *dev)
static int __init s3c24xx_spi_probe(struct platform_device *pdev)
{
+ struct s3c2410_spi_info *pdata;
struct s3c24xx_spi *hw;
struct spi_master *master;
struct resource *res;
@@ -254,10 +255,10 @@ static int __init s3c24xx_spi_probe(struct platform_device *pdev)
memset(hw, 0, sizeof(struct s3c24xx_spi));
hw->master = spi_master_get(master);
- hw->pdata = pdev->dev.platform_data;
+ hw->pdata = pdata = pdev->dev.platform_data;
hw->dev = &pdev->dev;
- if (hw->pdata == NULL) {
+ if (pdata == NULL) {
dev_err(&pdev->dev, "No platform data supplied\n");
err = -ENOENT;
goto err_no_pdata;
@@ -333,13 +334,13 @@ static int __init s3c24xx_spi_probe(struct platform_device *pdev)
/* setup any gpio we can */
- if (!hw->pdata->set_cs) {
+ if (!pdata->set_cs) {
hw->set_cs = s3c24xx_spi_gpiocs;
- s3c2410_gpio_setpin(hw->pdata->pin_cs, 1);
- s3c2410_gpio_cfgpin(hw->pdata->pin_cs, S3C2410_GPIO_OUTPUT);
+ s3c2410_gpio_setpin(pdata->pin_cs, 1);
+ s3c2410_gpio_cfgpin(pdata->pin_cs, S3C2410_GPIO_OUTPUT);
} else
- hw->set_cs = hw->pdata->set_cs;
+ hw->set_cs = pdata->set_cs;
/* register our spi controller */