On Tue, 14 Feb 2012 15:35:03 +0100, Danny Kukawka <danny.kuka...@bisect.de>
wrote:
> Fix for:
> drivers/spi/spi-topcliff-pch.c: In function âpch_spi_handler_subâ:
> drivers/spi/spi-topcliff-pch.c:325:17: warning: âbpw_lenâ may be
> used uninitialized in this function [-Wuninitialized]
> drivers/spi/spi-topcliff-pch.c:325:42: warning: ârx_indexâ may be
> used uninitialized in this function [-Wuninitialized]
> drivers/spi/spi-topcliff-pch.c:325:42: warning: âtx_indexâ may be
> used uninitialized in this function [-Wuninitialized]
>
> Move usage of tx_index, rx_index and bpw_len into the same
> block as where they are set to prevent uninitialized usage.
>
> v2: instead of init variables with 0 move the whole block
>
> Signed-off-by: Danny Kukawka <danny.kuka...@bisect.de>
Applied, thanks
g.
> ---
> drivers/spi/spi-topcliff-pch.c | 33 +++++++++++++++----------------
> 1 files changed, 17 insertions(+), 16 deletions(-)
>
> diff --git a/drivers/spi/spi-topcliff-pch.c b/drivers/spi/spi-topcliff-pch.c
> index 10182eb..1107469 100644
> --- a/drivers/spi/spi-topcliff-pch.c
> +++ b/drivers/spi/spi-topcliff-pch.c
> @@ -318,22 +318,23 @@ static void pch_spi_handler_sub(struct pch_spi_data
> *data, u32 reg_spsr_val,
> data->tx_index = tx_index;
> data->rx_index = rx_index;
>
> - }
> -
> - /* if transfer complete interrupt */
> - if (reg_spsr_val & SPSR_FI_BIT) {
> - if ((tx_index == bpw_len) && (rx_index == tx_index)) {
> - /* disable interrupts */
> - pch_spi_setclr_reg(data->master, PCH_SPCR, 0, PCH_ALL);
> -
> - /* transfer is completed;
> - inform pch_spi_process_messages */
> - data->transfer_complete = true;
> - data->transfer_active = false;
> - wake_up(&data->wait);
> - } else {
> - dev_err(&data->master->dev,
> - "%s : Transfer is not completed", __func__);
> + /* if transfer complete interrupt */
> + if (reg_spsr_val & SPSR_FI_BIT) {
> + if ((tx_index == bpw_len) && (rx_index == tx_index)) {
> + /* disable interrupts */
> + pch_spi_setclr_reg(data->master, PCH_SPCR, 0,
> + PCH_ALL);
> +
> + /* transfer is completed;
> + inform pch_spi_process_messages */
> + data->transfer_complete = true;
> + data->transfer_active = false;
> + wake_up(&data->wait);
> + } else {
> + dev_err(&data->master->dev,
> + "%s : Transfer is not completed",
> + __func__);
> + }
> }
> }
> }
> --
> 1.7.7.3
>
--
Grant Likely, B.Sc, P.Eng.
Secret Lab Technologies,Ltd.
------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general