|
@@ -804,14 +804,6 @@ static int pxa2xx_spi_transfer_one_message(struct spi_master *master,
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
-static int pxa2xx_spi_prepare_transfer(struct spi_master *master)
|
|
|
-{
|
|
|
- struct driver_data *drv_data = spi_master_get_devdata(master);
|
|
|
-
|
|
|
- pm_runtime_get_sync(&drv_data->pdev->dev);
|
|
|
- return 0;
|
|
|
-}
|
|
|
-
|
|
|
static int pxa2xx_spi_unprepare_transfer(struct spi_master *master)
|
|
|
{
|
|
|
struct driver_data *drv_data = spi_master_get_devdata(master);
|
|
@@ -820,8 +812,6 @@ static int pxa2xx_spi_unprepare_transfer(struct spi_master *master)
|
|
|
write_SSCR0(read_SSCR0(drv_data->ioaddr) & ~SSCR0_SSE,
|
|
|
drv_data->ioaddr);
|
|
|
|
|
|
- pm_runtime_mark_last_busy(&drv_data->pdev->dev);
|
|
|
- pm_runtime_put_autosuspend(&drv_data->pdev->dev);
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -1134,8 +1124,8 @@ static int pxa2xx_spi_probe(struct platform_device *pdev)
|
|
|
master->cleanup = cleanup;
|
|
|
master->setup = setup;
|
|
|
master->transfer_one_message = pxa2xx_spi_transfer_one_message;
|
|
|
- master->prepare_transfer_hardware = pxa2xx_spi_prepare_transfer;
|
|
|
master->unprepare_transfer_hardware = pxa2xx_spi_unprepare_transfer;
|
|
|
+ master->auto_runtime_pm = true;
|
|
|
|
|
|
drv_data->ssp_type = ssp->type;
|
|
|
drv_data->null_dma_buf = (u32 *)PTR_ALIGN(&drv_data[1], DMA_ALIGNMENT);
|