.. | .. |
---|
157 | 157 | spi_message_init(&msg); |
---|
158 | 158 | tx[1].tx_buf = &refresh; |
---|
159 | 159 | tx[1].len = sizeof(refresh); |
---|
160 | | - tx[1].delay_usecs = MACHXO2_REFRESH_USEC; |
---|
| 160 | + tx[1].delay.value = MACHXO2_REFRESH_USEC; |
---|
| 161 | + tx[1].delay.unit = SPI_DELAY_UNIT_USECS; |
---|
161 | 162 | spi_message_add_tail(&tx[1], &msg); |
---|
162 | 163 | ret = spi_sync(spi, &msg); |
---|
163 | 164 | if (ret) |
---|
.. | .. |
---|
208 | 209 | spi_message_init(&msg); |
---|
209 | 210 | tx[0].tx_buf = &enable; |
---|
210 | 211 | tx[0].len = sizeof(enable); |
---|
211 | | - tx[0].delay_usecs = MACHXO2_LOW_DELAY_USEC; |
---|
| 212 | + tx[0].delay.value = MACHXO2_LOW_DELAY_USEC; |
---|
| 213 | + tx[0].delay.unit = SPI_DELAY_UNIT_USECS; |
---|
212 | 214 | spi_message_add_tail(&tx[0], &msg); |
---|
213 | 215 | |
---|
214 | 216 | tx[1].tx_buf = &erase; |
---|
.. | .. |
---|
271 | 273 | spi_message_init(&msg); |
---|
272 | 274 | tx.tx_buf = payload; |
---|
273 | 275 | tx.len = MACHXO2_BUF_SIZE; |
---|
274 | | - tx.delay_usecs = MACHXO2_HIGH_DELAY_USEC; |
---|
| 276 | + tx.delay.value = MACHXO2_HIGH_DELAY_USEC; |
---|
| 277 | + tx.delay.unit = SPI_DELAY_UNIT_USECS; |
---|
275 | 278 | spi_message_add_tail(&tx, &msg); |
---|
276 | 279 | ret = spi_sync(spi, &msg); |
---|
277 | 280 | if (ret) { |
---|
.. | .. |
---|
320 | 323 | spi_message_init(&msg); |
---|
321 | 324 | tx[1].tx_buf = &refresh; |
---|
322 | 325 | tx[1].len = sizeof(refresh); |
---|
323 | | - tx[1].delay_usecs = MACHXO2_REFRESH_USEC; |
---|
| 326 | + tx[1].delay.value = MACHXO2_REFRESH_USEC; |
---|
| 327 | + tx[1].delay.unit = SPI_DELAY_UNIT_USECS; |
---|
324 | 328 | spi_message_add_tail(&tx[1], &msg); |
---|
325 | 329 | ret = spi_sync(spi, &msg); |
---|
326 | 330 | if (ret) |
---|
.. | .. |
---|
360 | 364 | { |
---|
361 | 365 | struct device *dev = &spi->dev; |
---|
362 | 366 | struct fpga_manager *mgr; |
---|
363 | | - int ret; |
---|
364 | 367 | |
---|
365 | 368 | if (spi->max_speed_hz > MACHXO2_MAX_SPEED) { |
---|
366 | 369 | dev_err(dev, "Speed is too high\n"); |
---|
367 | 370 | return -EINVAL; |
---|
368 | 371 | } |
---|
369 | 372 | |
---|
370 | | - mgr = fpga_mgr_create(dev, "Lattice MachXO2 SPI FPGA Manager", |
---|
371 | | - &machxo2_ops, spi); |
---|
| 373 | + mgr = devm_fpga_mgr_create(dev, "Lattice MachXO2 SPI FPGA Manager", |
---|
| 374 | + &machxo2_ops, spi); |
---|
372 | 375 | if (!mgr) |
---|
373 | 376 | return -ENOMEM; |
---|
374 | 377 | |
---|
375 | 378 | spi_set_drvdata(spi, mgr); |
---|
376 | 379 | |
---|
377 | | - ret = fpga_mgr_register(mgr); |
---|
378 | | - if (ret) |
---|
379 | | - fpga_mgr_free(mgr); |
---|
380 | | - |
---|
381 | | - return ret; |
---|
| 380 | + return fpga_mgr_register(mgr); |
---|
382 | 381 | } |
---|
383 | 382 | |
---|
384 | 383 | static int machxo2_spi_remove(struct spi_device *spi) |
---|