@@ -423,6 +423,7 @@ rt_ssize_t spi_bit_xfer(struct rt_spi_device *device, struct rt_spi_message *mes
423
423
struct rt_spi_bit_ops * ops = obj -> ops ;
424
424
struct rt_spi_configuration * config = & obj -> config ;
425
425
rt_base_t cs_pin = device -> cs_pin ;
426
+ rt_ssize_t length = 0 ;
426
427
427
428
RT_ASSERT (device != NULL );
428
429
RT_ASSERT (message != NULL );
@@ -468,38 +469,22 @@ rt_ssize_t spi_bit_xfer(struct rt_spi_device *device, struct rt_spi_message *mes
468
469
{
469
470
if (config -> data_width <= 8 )
470
471
{
471
- spi_xfer_3line_data8 (ops ,
472
- config ,
473
- message -> send_buf ,
474
- message -> recv_buf ,
475
- message -> length );
472
+ length = spi_xfer_3line_data8 (ops , config , message -> send_buf , message -> recv_buf , message -> length );
476
473
}
477
474
else if (config -> data_width <= 16 )
478
475
{
479
- spi_xfer_3line_data16 (ops ,
480
- config ,
481
- message -> send_buf ,
482
- message -> recv_buf ,
483
- message -> length );
476
+ length = spi_xfer_3line_data16 (ops , config , message -> send_buf , message -> recv_buf , message -> length );
484
477
}
485
478
}
486
479
else
487
480
{
488
481
if (config -> data_width <= 8 )
489
482
{
490
- spi_xfer_4line_data8 (ops ,
491
- config ,
492
- message -> send_buf ,
493
- message -> recv_buf ,
494
- message -> length );
483
+ length = spi_xfer_4line_data8 (ops , config , message -> send_buf , message -> recv_buf , message -> length );
495
484
}
496
485
else if (config -> data_width <= 16 )
497
486
{
498
- spi_xfer_4line_data16 (ops ,
499
- config ,
500
- message -> send_buf ,
501
- message -> recv_buf ,
502
- message -> length );
487
+ length = spi_xfer_4line_data16 (ops , config , message -> send_buf , message -> recv_buf , message -> length );
503
488
}
504
489
}
505
490
@@ -518,7 +503,7 @@ rt_ssize_t spi_bit_xfer(struct rt_spi_device *device, struct rt_spi_message *mes
518
503
LOG_I ("spi release cs\n" );
519
504
}
520
505
521
- return message -> length ;
506
+ return length ;
522
507
}
523
508
524
509
static const struct rt_spi_ops spi_bit_bus_ops =
0 commit comments