diff options
Diffstat (limited to 'drivers/spi/spi-s3c64xx.c')
-rw-r--r-- | drivers/spi/spi-s3c64xx.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c index d1c8441f638c..a2062b231a6b 100644 --- a/drivers/spi/spi-s3c64xx.c +++ b/drivers/spi/spi-s3c64xx.c | |||
@@ -976,7 +976,8 @@ err_msgq: | |||
976 | spi_set_ctldata(spi, NULL); | 976 | spi_set_ctldata(spi, NULL); |
977 | 977 | ||
978 | err_gpio_req: | 978 | err_gpio_req: |
979 | kfree(cs); | 979 | if (spi->dev.of_node) |
980 | kfree(cs); | ||
980 | 981 | ||
981 | return err; | 982 | return err; |
982 | } | 983 | } |
@@ -1409,7 +1410,7 @@ static int s3c64xx_spi_remove(struct platform_device *pdev) | |||
1409 | #ifdef CONFIG_PM | 1410 | #ifdef CONFIG_PM |
1410 | static int s3c64xx_spi_suspend(struct device *dev) | 1411 | static int s3c64xx_spi_suspend(struct device *dev) |
1411 | { | 1412 | { |
1412 | struct spi_master *master = spi_master_get(dev_get_drvdata(dev)); | 1413 | struct spi_master *master = dev_get_drvdata(dev); |
1413 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); | 1414 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); |
1414 | 1415 | ||
1415 | spi_master_suspend(master); | 1416 | spi_master_suspend(master); |
@@ -1428,7 +1429,7 @@ static int s3c64xx_spi_suspend(struct device *dev) | |||
1428 | 1429 | ||
1429 | static int s3c64xx_spi_resume(struct device *dev) | 1430 | static int s3c64xx_spi_resume(struct device *dev) |
1430 | { | 1431 | { |
1431 | struct spi_master *master = spi_master_get(dev_get_drvdata(dev)); | 1432 | struct spi_master *master = dev_get_drvdata(dev); |
1432 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); | 1433 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); |
1433 | struct s3c64xx_spi_info *sci = sdd->cntrlr_info; | 1434 | struct s3c64xx_spi_info *sci = sdd->cntrlr_info; |
1434 | 1435 | ||
@@ -1452,7 +1453,7 @@ static int s3c64xx_spi_resume(struct device *dev) | |||
1452 | #ifdef CONFIG_PM_RUNTIME | 1453 | #ifdef CONFIG_PM_RUNTIME |
1453 | static int s3c64xx_spi_runtime_suspend(struct device *dev) | 1454 | static int s3c64xx_spi_runtime_suspend(struct device *dev) |
1454 | { | 1455 | { |
1455 | struct spi_master *master = spi_master_get(dev_get_drvdata(dev)); | 1456 | struct spi_master *master = dev_get_drvdata(dev); |
1456 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); | 1457 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); |
1457 | 1458 | ||
1458 | clk_disable(sdd->clk); | 1459 | clk_disable(sdd->clk); |
@@ -1463,7 +1464,7 @@ static int s3c64xx_spi_runtime_suspend(struct device *dev) | |||
1463 | 1464 | ||
1464 | static int s3c64xx_spi_runtime_resume(struct device *dev) | 1465 | static int s3c64xx_spi_runtime_resume(struct device *dev) |
1465 | { | 1466 | { |
1466 | struct spi_master *master = spi_master_get(dev_get_drvdata(dev)); | 1467 | struct spi_master *master = dev_get_drvdata(dev); |
1467 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); | 1468 | struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(master); |
1468 | 1469 | ||
1469 | clk_enable(sdd->src_clk); | 1470 | clk_enable(sdd->src_clk); |