175
175
#define SPI_DMA_MIN_BYTES 16
176
176
177
177
/**
178
- * stm32_spi_reg - stm32 SPI register & bitfield desc
178
+ * struct stm32_spi_reg - stm32 SPI register & bitfield desc
179
179
* @reg: register offset
180
180
* @mask: bitfield mask
181
181
* @shift: left shift
@@ -187,16 +187,16 @@ struct stm32_spi_reg {
187
187
};
188
188
189
189
/**
190
- * stm32_spi_regspec - stm32 registers definition, compatible dependent data
191
- * en: enable register and SPI enable bit
192
- * dma_rx_en: SPI DMA RX enable register end SPI DMA RX enable bit
193
- * dma_tx_en: SPI DMA TX enable register end SPI DMA TX enable bit
194
- * cpol: clock polarity register and polarity bit
195
- * cpha: clock phase register and phase bit
196
- * lsb_first: LSB transmitted first register and bit
197
- * br: baud rate register and bitfields
198
- * rx: SPI RX data register
199
- * tx: SPI TX data register
190
+ * struct stm32_spi_regspec - stm32 registers definition, compatible dependent data
191
+ * @ en: enable register and SPI enable bit
192
+ * @ dma_rx_en: SPI DMA RX enable register end SPI DMA RX enable bit
193
+ * @ dma_tx_en: SPI DMA TX enable register end SPI DMA TX enable bit
194
+ * @ cpol: clock polarity register and polarity bit
195
+ * @ cpha: clock phase register and phase bit
196
+ * @ lsb_first: LSB transmitted first register and bit
197
+ * @ br: baud rate register and bitfields
198
+ * @ rx: SPI RX data register
199
+ * @ tx: SPI TX data register
200
200
*/
201
201
struct stm32_spi_regspec {
202
202
const struct stm32_spi_reg en ;
@@ -213,7 +213,7 @@ struct stm32_spi_regspec {
213
213
struct stm32_spi ;
214
214
215
215
/**
216
- * stm32_spi_cfg - stm32 compatible configuration data
216
+ * struct stm32_spi_cfg - stm32 compatible configuration data
217
217
* @regs: registers descriptions
218
218
* @get_fifo_size: routine to get fifo size
219
219
* @get_bpw_mask: routine to get bits per word mask
@@ -223,13 +223,13 @@ struct stm32_spi;
223
223
* @set_mode: routine to configure registers to desired mode
224
224
* @set_data_idleness: optional routine to configure registers to desired idle
225
225
* time between frames (if driver has this functionality)
226
- * set_number_of_data: optional routine to configure registers to desired
226
+ * @ set_number_of_data: optional routine to configure registers to desired
227
227
* number of data (if driver has this functionality)
228
228
* @can_dma: routine to determine if the transfer is eligible for DMA use
229
229
* @transfer_one_dma_start: routine to start transfer a single spi_transfer
230
230
* using DMA
231
- * @dma_rx cb : routine to call after DMA RX channel operation is complete
232
- * @dma_tx cb : routine to call after DMA TX channel operation is complete
231
+ * @dma_rx_cb : routine to call after DMA RX channel operation is complete
232
+ * @dma_tx_cb : routine to call after DMA TX channel operation is complete
233
233
* @transfer_one_irq: routine to configure interrupts for driver
234
234
* @irq_handler_event: Interrupt handler for SPI controller events
235
235
* @irq_handler_thread: thread of interrupt handler for SPI controller
@@ -587,6 +587,7 @@ static void stm32f4_spi_read_rx(struct stm32_spi *spi)
587
587
/**
588
588
* stm32h7_spi_read_rxfifo - Read bytes in Receive Data Register
589
589
* @spi: pointer to the spi controller data structure
590
+ * @flush: boolean indicating that FIFO should be flushed
590
591
*
591
592
* Write in rx_buf depends on remaining bytes to avoid to write beyond
592
593
* rx_buf end.
@@ -756,6 +757,9 @@ static void stm32h7_spi_disable(struct stm32_spi *spi)
756
757
757
758
/**
758
759
* stm32_spi_can_dma - Determine if the transfer is eligible for DMA use
760
+ * @master: controller master interface
761
+ * @spi_dev: pointer to the spi device
762
+ * @transfer: pointer to spi transfer
759
763
*
760
764
* If driver has fifo and the current transfer size is greater than fifo size,
761
765
* use DMA. Otherwise use DMA for transfer longer than defined DMA min bytes.
@@ -974,6 +978,8 @@ static irqreturn_t stm32h7_spi_irq_thread(int irq, void *dev_id)
974
978
975
979
/**
976
980
* stm32_spi_prepare_msg - set up the controller to transfer a single message
981
+ * @master: controller master interface
982
+ * @msg: pointer to spi message
977
983
*/
978
984
static int stm32_spi_prepare_msg (struct spi_master * master ,
979
985
struct spi_message * msg )
@@ -1026,6 +1032,7 @@ static int stm32_spi_prepare_msg(struct spi_master *master,
1026
1032
1027
1033
/**
1028
1034
* stm32f4_spi_dma_tx_cb - dma callback
1035
+ * @data: pointer to the spi controller data structure
1029
1036
*
1030
1037
* DMA callback is called when the transfer is complete for DMA TX channel.
1031
1038
*/
@@ -1041,6 +1048,7 @@ static void stm32f4_spi_dma_tx_cb(void *data)
1041
1048
1042
1049
/**
1043
1050
* stm32f4_spi_dma_rx_cb - dma callback
1051
+ * @data: pointer to the spi controller data structure
1044
1052
*
1045
1053
* DMA callback is called when the transfer is complete for DMA RX channel.
1046
1054
*/
@@ -1054,6 +1062,7 @@ static void stm32f4_spi_dma_rx_cb(void *data)
1054
1062
1055
1063
/**
1056
1064
* stm32h7_spi_dma_cb - dma callback
1065
+ * @data: pointer to the spi controller data structure
1057
1066
*
1058
1067
* DMA callback is called when the transfer is complete or when an error
1059
1068
* occurs. If the transfer is complete, EOT flag is raised.
@@ -1079,6 +1088,9 @@ static void stm32h7_spi_dma_cb(void *data)
1079
1088
/**
1080
1089
* stm32_spi_dma_config - configure dma slave channel depending on current
1081
1090
* transfer bits_per_word.
1091
+ * @spi: pointer to the spi controller data structure
1092
+ * @dma_conf: pointer to the dma_slave_config structure
1093
+ * @dir: direction of the dma transfer
1082
1094
*/
1083
1095
static void stm32_spi_dma_config (struct stm32_spi * spi ,
1084
1096
struct dma_slave_config * dma_conf ,
@@ -1126,6 +1138,7 @@ static void stm32_spi_dma_config(struct stm32_spi *spi,
1126
1138
/**
1127
1139
* stm32f4_spi_transfer_one_irq - transfer a single spi_transfer using
1128
1140
* interrupts
1141
+ * @spi: pointer to the spi controller data structure
1129
1142
*
1130
1143
* It must returns 0 if the transfer is finished or 1 if the transfer is still
1131
1144
* in progress.
@@ -1166,6 +1179,7 @@ static int stm32f4_spi_transfer_one_irq(struct stm32_spi *spi)
1166
1179
/**
1167
1180
* stm32h7_spi_transfer_one_irq - transfer a single spi_transfer using
1168
1181
* interrupts
1182
+ * @spi: pointer to the spi controller data structure
1169
1183
*
1170
1184
* It must returns 0 if the transfer is finished or 1 if the transfer is still
1171
1185
* in progress.
@@ -1207,6 +1221,7 @@ static int stm32h7_spi_transfer_one_irq(struct stm32_spi *spi)
1207
1221
/**
1208
1222
* stm32f4_spi_transfer_one_dma_start - Set SPI driver registers to start
1209
1223
* transfer using DMA
1224
+ * @spi: pointer to the spi controller data structure
1210
1225
*/
1211
1226
static void stm32f4_spi_transfer_one_dma_start (struct stm32_spi * spi )
1212
1227
{
@@ -1227,6 +1242,7 @@ static void stm32f4_spi_transfer_one_dma_start(struct stm32_spi *spi)
1227
1242
/**
1228
1243
* stm32h7_spi_transfer_one_dma_start - Set SPI driver registers to start
1229
1244
* transfer using DMA
1245
+ * @spi: pointer to the spi controller data structure
1230
1246
*/
1231
1247
static void stm32h7_spi_transfer_one_dma_start (struct stm32_spi * spi )
1232
1248
{
@@ -1243,6 +1259,8 @@ static void stm32h7_spi_transfer_one_dma_start(struct stm32_spi *spi)
1243
1259
1244
1260
/**
1245
1261
* stm32_spi_transfer_one_dma - transfer a single spi_transfer using DMA
1262
+ * @spi: pointer to the spi controller data structure
1263
+ * @xfer: pointer to the spi_transfer structure
1246
1264
*
1247
1265
* It must returns 0 if the transfer is finished or 1 if the transfer is still
1248
1266
* in progress.
@@ -1405,7 +1423,7 @@ static void stm32_spi_set_mbr(struct stm32_spi *spi, u32 mbrdiv)
1405
1423
/**
1406
1424
* stm32_spi_communication_type - return transfer communication type
1407
1425
* @spi_dev: pointer to the spi device
1408
- * transfer: pointer to spi transfer
1426
+ * @ transfer: pointer to spi transfer
1409
1427
*/
1410
1428
static unsigned int stm32_spi_communication_type (struct spi_device * spi_dev ,
1411
1429
struct spi_transfer * transfer )
@@ -1522,7 +1540,7 @@ static void stm32h7_spi_data_idleness(struct stm32_spi *spi, u32 len)
1522
1540
/**
1523
1541
* stm32h7_spi_number_of_data - configure number of data at current transfer
1524
1542
* @spi: pointer to the spi controller data structure
1525
- * @len : transfer length
1543
+ * @nb_words : transfer length (in words)
1526
1544
*/
1527
1545
static int stm32h7_spi_number_of_data (struct stm32_spi * spi , u32 nb_words )
1528
1546
{
@@ -1546,6 +1564,9 @@ static int stm32h7_spi_number_of_data(struct stm32_spi *spi, u32 nb_words)
1546
1564
* stm32_spi_transfer_one_setup - common setup to transfer a single
1547
1565
* spi_transfer either using DMA or
1548
1566
* interrupts.
1567
+ * @spi: pointer to the spi controller data structure
1568
+ * @spi_dev: pointer to the spi device
1569
+ * @transfer: pointer to spi transfer
1549
1570
*/
1550
1571
static int stm32_spi_transfer_one_setup (struct stm32_spi * spi ,
1551
1572
struct spi_device * spi_dev ,
@@ -1625,6 +1646,9 @@ static int stm32_spi_transfer_one_setup(struct stm32_spi *spi,
1625
1646
1626
1647
/**
1627
1648
* stm32_spi_transfer_one - transfer a single spi_transfer
1649
+ * @master: controller master interface
1650
+ * @spi_dev: pointer to the spi device
1651
+ * @transfer: pointer to spi transfer
1628
1652
*
1629
1653
* It must return 0 if the transfer is finished or 1 if the transfer is still
1630
1654
* in progress.
@@ -1658,6 +1682,8 @@ static int stm32_spi_transfer_one(struct spi_master *master,
1658
1682
1659
1683
/**
1660
1684
* stm32_spi_unprepare_msg - relax the hardware
1685
+ * @master: controller master interface
1686
+ * @msg: pointer to the spi message
1661
1687
*/
1662
1688
static int stm32_spi_unprepare_msg (struct spi_master * master ,
1663
1689
struct spi_message * msg )
@@ -1671,6 +1697,7 @@ static int stm32_spi_unprepare_msg(struct spi_master *master,
1671
1697
1672
1698
/**
1673
1699
* stm32f4_spi_config - Configure SPI controller as SPI master
1700
+ * @spi: pointer to the spi controller data structure
1674
1701
*/
1675
1702
static int stm32f4_spi_config (struct stm32_spi * spi )
1676
1703
{
@@ -1701,6 +1728,7 @@ static int stm32f4_spi_config(struct stm32_spi *spi)
1701
1728
1702
1729
/**
1703
1730
* stm32h7_spi_config - Configure SPI controller as SPI master
1731
+ * @spi: pointer to the spi controller data structure
1704
1732
*/
1705
1733
static int stm32h7_spi_config (struct stm32_spi * spi )
1706
1734
{
0 commit comments