@@ -83,7 +83,7 @@ static int xtfpga_spi_probe(struct platform_device *pdev)
83
83
int ret ;
84
84
struct spi_master * master ;
85
85
86
- master = spi_alloc_master (& pdev -> dev , sizeof (struct xtfpga_spi ));
86
+ master = devm_spi_alloc_master (& pdev -> dev , sizeof (struct xtfpga_spi ));
87
87
if (!master )
88
88
return - ENOMEM ;
89
89
@@ -97,30 +97,24 @@ static int xtfpga_spi_probe(struct platform_device *pdev)
97
97
xspi -> bitbang .chipselect = xtfpga_spi_chipselect ;
98
98
xspi -> bitbang .txrx_word [SPI_MODE_0 ] = xtfpga_spi_txrx_word ;
99
99
xspi -> regs = devm_platform_ioremap_resource (pdev , 0 );
100
- if (IS_ERR (xspi -> regs )) {
101
- ret = PTR_ERR (xspi -> regs );
102
- goto err ;
103
- }
100
+ if (IS_ERR (xspi -> regs ))
101
+ return PTR_ERR (xspi -> regs );
104
102
105
103
xtfpga_spi_write32 (xspi , XTFPGA_SPI_START , 0 );
106
104
usleep_range (1000 , 2000 );
107
105
if (xtfpga_spi_read32 (xspi , XTFPGA_SPI_BUSY )) {
108
106
dev_err (& pdev -> dev , "Device stuck in busy state\n" );
109
- ret = - EBUSY ;
110
- goto err ;
107
+ return - EBUSY ;
111
108
}
112
109
113
110
ret = spi_bitbang_start (& xspi -> bitbang );
114
111
if (ret < 0 ) {
115
112
dev_err (& pdev -> dev , "spi_bitbang_start failed\n" );
116
- goto err ;
113
+ return ret ;
117
114
}
118
115
119
116
platform_set_drvdata (pdev , master );
120
117
return 0 ;
121
- err :
122
- spi_master_put (master );
123
- return ret ;
124
118
}
125
119
126
120
static int xtfpga_spi_remove (struct platform_device * pdev )
0 commit comments