@@ -152,7 +152,7 @@ struct tegra_slink_chip_data {
152152
153153struct tegra_slink_data {
154154 struct device * dev ;
155- struct spi_master * master ;
155+ struct spi_controller * host ;
156156 const struct tegra_slink_chip_data * chip_data ;
157157 spinlock_t lock ;
158158
@@ -671,7 +671,7 @@ static void tegra_slink_deinit_dma_param(struct tegra_slink_data *tspi,
671671static int tegra_slink_start_transfer_one (struct spi_device * spi ,
672672 struct spi_transfer * t )
673673{
674- struct tegra_slink_data * tspi = spi_master_get_devdata (spi -> master );
674+ struct tegra_slink_data * tspi = spi_controller_get_devdata (spi -> controller );
675675 u32 speed ;
676676 u8 bits_per_word ;
677677 unsigned total_fifo_words ;
@@ -737,7 +737,7 @@ static int tegra_slink_setup(struct spi_device *spi)
737737 SLINK_CS_POLARITY3 ,
738738 };
739739
740- struct tegra_slink_data * tspi = spi_master_get_devdata (spi -> master );
740+ struct tegra_slink_data * tspi = spi_controller_get_devdata (spi -> controller );
741741 u32 val ;
742742 unsigned long flags ;
743743 int ret ;
@@ -768,10 +768,10 @@ static int tegra_slink_setup(struct spi_device *spi)
768768 return 0 ;
769769}
770770
771- static int tegra_slink_prepare_message (struct spi_master * master ,
771+ static int tegra_slink_prepare_message (struct spi_controller * host ,
772772 struct spi_message * msg )
773773{
774- struct tegra_slink_data * tspi = spi_master_get_devdata ( master );
774+ struct tegra_slink_data * tspi = spi_controller_get_devdata ( host );
775775 struct spi_device * spi = msg -> spi ;
776776
777777 tegra_slink_clear_status (tspi );
@@ -794,11 +794,11 @@ static int tegra_slink_prepare_message(struct spi_master *master,
794794 return 0 ;
795795}
796796
797- static int tegra_slink_transfer_one (struct spi_master * master ,
797+ static int tegra_slink_transfer_one (struct spi_controller * host ,
798798 struct spi_device * spi ,
799799 struct spi_transfer * xfer )
800800{
801- struct tegra_slink_data * tspi = spi_master_get_devdata ( master );
801+ struct tegra_slink_data * tspi = spi_controller_get_devdata ( host );
802802 int ret ;
803803
804804 reinit_completion (& tspi -> xfer_completion );
@@ -825,10 +825,10 @@ static int tegra_slink_transfer_one(struct spi_master *master,
825825 return 0 ;
826826}
827827
828- static int tegra_slink_unprepare_message (struct spi_master * master ,
828+ static int tegra_slink_unprepare_message (struct spi_controller * host ,
829829 struct spi_message * msg )
830830{
831- struct tegra_slink_data * tspi = spi_master_get_devdata ( master );
831+ struct tegra_slink_data * tspi = spi_controller_get_devdata ( host );
832832
833833 tegra_slink_writel (tspi , tspi -> def_command_reg , SLINK_COMMAND );
834834 tegra_slink_writel (tspi , tspi -> def_command2_reg , SLINK_COMMAND2 );
@@ -999,44 +999,44 @@ MODULE_DEVICE_TABLE(of, tegra_slink_of_match);
999999
10001000static int tegra_slink_probe (struct platform_device * pdev )
10011001{
1002- struct spi_master * master ;
1002+ struct spi_controller * host ;
10031003 struct tegra_slink_data * tspi ;
10041004 struct resource * r ;
10051005 int ret , spi_irq ;
10061006 const struct tegra_slink_chip_data * cdata = NULL ;
10071007
10081008 cdata = of_device_get_match_data (& pdev -> dev );
10091009
1010- master = spi_alloc_master (& pdev -> dev , sizeof (* tspi ));
1011- if (!master ) {
1012- dev_err (& pdev -> dev , "master allocation failed\n" );
1010+ host = spi_alloc_host (& pdev -> dev , sizeof (* tspi ));
1011+ if (!host ) {
1012+ dev_err (& pdev -> dev , "host allocation failed\n" );
10131013 return - ENOMEM ;
10141014 }
10151015
10161016 /* the spi->mode bits understood by this driver: */
1017- master -> mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH ;
1018- master -> setup = tegra_slink_setup ;
1019- master -> prepare_message = tegra_slink_prepare_message ;
1020- master -> transfer_one = tegra_slink_transfer_one ;
1021- master -> unprepare_message = tegra_slink_unprepare_message ;
1022- master -> auto_runtime_pm = true;
1023- master -> num_chipselect = MAX_CHIP_SELECT ;
1024-
1025- platform_set_drvdata (pdev , master );
1026- tspi = spi_master_get_devdata ( master );
1027- tspi -> master = master ;
1017+ host -> mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH ;
1018+ host -> setup = tegra_slink_setup ;
1019+ host -> prepare_message = tegra_slink_prepare_message ;
1020+ host -> transfer_one = tegra_slink_transfer_one ;
1021+ host -> unprepare_message = tegra_slink_unprepare_message ;
1022+ host -> auto_runtime_pm = true;
1023+ host -> num_chipselect = MAX_CHIP_SELECT ;
1024+
1025+ platform_set_drvdata (pdev , host );
1026+ tspi = spi_controller_get_devdata ( host );
1027+ tspi -> host = host ;
10281028 tspi -> dev = & pdev -> dev ;
10291029 tspi -> chip_data = cdata ;
10301030 spin_lock_init (& tspi -> lock );
10311031
10321032 if (of_property_read_u32 (tspi -> dev -> of_node , "spi-max-frequency" ,
1033- & master -> max_speed_hz ))
1034- master -> max_speed_hz = 25000000 ; /* 25MHz */
1033+ & host -> max_speed_hz ))
1034+ host -> max_speed_hz = 25000000 ; /* 25MHz */
10351035
10361036 tspi -> base = devm_platform_get_and_ioremap_resource (pdev , 0 , & r );
10371037 if (IS_ERR (tspi -> base )) {
10381038 ret = PTR_ERR (tspi -> base );
1039- goto exit_free_master ;
1039+ goto exit_free_host ;
10401040 }
10411041 tspi -> phys = r -> start ;
10421042
@@ -1045,26 +1045,26 @@ static int tegra_slink_probe(struct platform_device *pdev)
10451045 if (IS_ERR (tspi -> clk )) {
10461046 ret = PTR_ERR (tspi -> clk );
10471047 dev_err (& pdev -> dev , "Can not get clock %d\n" , ret );
1048- goto exit_free_master ;
1048+ goto exit_free_host ;
10491049 }
10501050
10511051 tspi -> rst = devm_reset_control_get_exclusive (& pdev -> dev , "spi" );
10521052 if (IS_ERR (tspi -> rst )) {
10531053 dev_err (& pdev -> dev , "can not get reset\n" );
10541054 ret = PTR_ERR (tspi -> rst );
1055- goto exit_free_master ;
1055+ goto exit_free_host ;
10561056 }
10571057
10581058 ret = devm_tegra_core_dev_init_opp_table_common (& pdev -> dev );
10591059 if (ret )
1060- goto exit_free_master ;
1060+ goto exit_free_host ;
10611061
10621062 tspi -> max_buf_size = SLINK_FIFO_DEPTH << 2 ;
10631063 tspi -> dma_buf_size = DEFAULT_SPI_DMA_BUF_LEN ;
10641064
10651065 ret = tegra_slink_init_dma_param (tspi , true);
10661066 if (ret < 0 )
1067- goto exit_free_master ;
1067+ goto exit_free_host ;
10681068 ret = tegra_slink_init_dma_param (tspi , false);
10691069 if (ret < 0 )
10701070 goto exit_rx_dma_free ;
@@ -1103,10 +1103,10 @@ static int tegra_slink_probe(struct platform_device *pdev)
11031103 tegra_slink_writel (tspi , tspi -> def_command_reg , SLINK_COMMAND );
11041104 tegra_slink_writel (tspi , tspi -> def_command2_reg , SLINK_COMMAND2 );
11051105
1106- master -> dev .of_node = pdev -> dev .of_node ;
1107- ret = spi_register_master ( master );
1106+ host -> dev .of_node = pdev -> dev .of_node ;
1107+ ret = spi_register_controller ( host );
11081108 if (ret < 0 ) {
1109- dev_err (& pdev -> dev , "can not register to master err %d\n" , ret );
1109+ dev_err (& pdev -> dev , "can not register to host err %d\n" , ret );
11101110 goto exit_free_irq ;
11111111 }
11121112
@@ -1124,17 +1124,17 @@ static int tegra_slink_probe(struct platform_device *pdev)
11241124 tegra_slink_deinit_dma_param (tspi , false);
11251125exit_rx_dma_free :
11261126 tegra_slink_deinit_dma_param (tspi , true);
1127- exit_free_master :
1128- spi_master_put ( master );
1127+ exit_free_host :
1128+ spi_controller_put ( host );
11291129 return ret ;
11301130}
11311131
11321132static void tegra_slink_remove (struct platform_device * pdev )
11331133{
1134- struct spi_master * master = spi_master_get (platform_get_drvdata (pdev ));
1135- struct tegra_slink_data * tspi = spi_master_get_devdata ( master );
1134+ struct spi_controller * host = spi_controller_get (platform_get_drvdata (pdev ));
1135+ struct tegra_slink_data * tspi = spi_controller_get_devdata ( host );
11361136
1137- spi_unregister_master ( master );
1137+ spi_unregister_controller ( host );
11381138
11391139 free_irq (tspi -> irq , tspi );
11401140
@@ -1146,21 +1146,21 @@ static void tegra_slink_remove(struct platform_device *pdev)
11461146 if (tspi -> rx_dma_chan )
11471147 tegra_slink_deinit_dma_param (tspi , true);
11481148
1149- spi_master_put ( master );
1149+ spi_controller_put ( host );
11501150}
11511151
11521152#ifdef CONFIG_PM_SLEEP
11531153static int tegra_slink_suspend (struct device * dev )
11541154{
1155- struct spi_master * master = dev_get_drvdata (dev );
1155+ struct spi_controller * host = dev_get_drvdata (dev );
11561156
1157- return spi_master_suspend ( master );
1157+ return spi_controller_suspend ( host );
11581158}
11591159
11601160static int tegra_slink_resume (struct device * dev )
11611161{
1162- struct spi_master * master = dev_get_drvdata (dev );
1163- struct tegra_slink_data * tspi = spi_master_get_devdata ( master );
1162+ struct spi_controller * host = dev_get_drvdata (dev );
1163+ struct tegra_slink_data * tspi = spi_controller_get_devdata ( host );
11641164 int ret ;
11651165
11661166 ret = pm_runtime_resume_and_get (dev );
@@ -1172,14 +1172,14 @@ static int tegra_slink_resume(struct device *dev)
11721172 tegra_slink_writel (tspi , tspi -> command2_reg , SLINK_COMMAND2 );
11731173 pm_runtime_put (dev );
11741174
1175- return spi_master_resume ( master );
1175+ return spi_controller_resume ( host );
11761176}
11771177#endif
11781178
11791179static int __maybe_unused tegra_slink_runtime_suspend (struct device * dev )
11801180{
1181- struct spi_master * master = dev_get_drvdata (dev );
1182- struct tegra_slink_data * tspi = spi_master_get_devdata ( master );
1181+ struct spi_controller * host = dev_get_drvdata (dev );
1182+ struct tegra_slink_data * tspi = spi_controller_get_devdata ( host );
11831183
11841184 /* Flush all write which are in PPSB queue by reading back */
11851185 tegra_slink_readl (tspi , SLINK_MAS_DATA );
@@ -1190,8 +1190,8 @@ static int __maybe_unused tegra_slink_runtime_suspend(struct device *dev)
11901190
11911191static int __maybe_unused tegra_slink_runtime_resume (struct device * dev )
11921192{
1193- struct spi_master * master = dev_get_drvdata (dev );
1194- struct tegra_slink_data * tspi = spi_master_get_devdata ( master );
1193+ struct spi_controller * host = dev_get_drvdata (dev );
1194+ struct tegra_slink_data * tspi = spi_controller_get_devdata ( host );
11951195 int ret ;
11961196
11971197 ret = clk_prepare_enable (tspi -> clk );
0 commit comments