forked from luck/tmp_suning_uos_patched
spi: core: allow reporting the effectivly used speed_hz for a transfer
Provide a means for the spi bus driver to report the effectively used spi clock frequency used for each spi_transfer. Signed-off-by: Martin Sperl <kernel@martin.sperl.org> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
e727d4cbc7
commit
5d7e2b5ed5
|
@ -3126,6 +3126,7 @@ static int __spi_validate(struct spi_device *spi, struct spi_message *message)
|
|||
*/
|
||||
message->frame_length = 0;
|
||||
list_for_each_entry(xfer, &message->transfers, transfer_list) {
|
||||
xfer->effective_speed_hz = 0;
|
||||
message->frame_length += xfer->len;
|
||||
if (!xfer->bits_per_word)
|
||||
xfer->bits_per_word = spi->bits_per_word;
|
||||
|
|
|
@ -745,6 +745,9 @@ extern void spi_res_release(struct spi_controller *ctlr,
|
|||
* (set by bits_per_word) transmission.
|
||||
* @word_delay: clock cycles to inter word delay after each word size
|
||||
* (set by bits_per_word) transmission.
|
||||
* @effective_speed_hz: the effective SCK-speed that was used to
|
||||
* transfer this transfer. Set to 0 if the spi bus driver does
|
||||
* not support it.
|
||||
* @transfer_list: transfers are sequenced through @spi_message.transfers
|
||||
* @tx_sg: Scatterlist for transmit, currently not for client use
|
||||
* @rx_sg: Scatterlist for receive, currently not for client use
|
||||
|
@ -835,6 +838,8 @@ struct spi_transfer {
|
|||
u32 speed_hz;
|
||||
u16 word_delay;
|
||||
|
||||
u32 effective_speed_hz;
|
||||
|
||||
struct list_head transfer_list;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user