Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 17aaaa80 authored by Ricardo Ribalda Delgado's avatar Ricardo Ribalda Delgado Committed by Mark Brown
Browse files

spi/xilinx: Convert bits_per_word in bytes_per_word



Simplify the code by using the unit used on most of the code logic.

Signed-off-by: default avatarRicardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent d79b2d07
Loading
Loading
Loading
Loading
+9 −9
Original line number Original line Diff line number Diff line
@@ -87,7 +87,7 @@ struct xilinx_spi {
	u8 *rx_ptr;		/* pointer in the Tx buffer */
	u8 *rx_ptr;		/* pointer in the Tx buffer */
	const u8 *tx_ptr;	/* pointer in the Rx buffer */
	const u8 *tx_ptr;	/* pointer in the Rx buffer */
	int remaining_words;	/* the number of words left to transfer */
	int remaining_words;	/* the number of words left to transfer */
	u8 bits_per_word;
	u8 bytes_per_word;
	int buffer_size;	/* buffer size in words */
	int buffer_size;	/* buffer size in words */
	u32 cs_inactive;	/* Level of the CS pins when inactive*/
	u32 cs_inactive;	/* Level of the CS pins when inactive*/
	unsigned int (*read_fn)(void __iomem *);
	unsigned int (*read_fn)(void __iomem *);
@@ -121,7 +121,7 @@ static void xilinx_spi_tx(struct xilinx_spi *xspi)
		return;
		return;
	}
	}
	xspi->write_fn(*(u32 *)(xspi->tx_ptr), xspi->regs + XSPI_TXD_OFFSET);
	xspi->write_fn(*(u32 *)(xspi->tx_ptr), xspi->regs + XSPI_TXD_OFFSET);
	xspi->tx_ptr += xspi->bits_per_word / 8;
	xspi->tx_ptr += xspi->bytes_per_word;
}
}


static void xilinx_spi_rx(struct xilinx_spi *xspi)
static void xilinx_spi_rx(struct xilinx_spi *xspi)
@@ -131,19 +131,19 @@ static void xilinx_spi_rx(struct xilinx_spi *xspi)
	if (!xspi->rx_ptr)
	if (!xspi->rx_ptr)
		return;
		return;


	switch (xspi->bits_per_word) {
	switch (xspi->bytes_per_word) {
	case 8:
	case 1:
		*(u8 *)(xspi->rx_ptr) = data;
		*(u8 *)(xspi->rx_ptr) = data;
		break;
		break;
	case 16:
	case 2:
		*(u16 *)(xspi->rx_ptr) = data;
		*(u16 *)(xspi->rx_ptr) = data;
		break;
		break;
	case 32:
	case 4:
		*(u32 *)(xspi->rx_ptr) = data;
		*(u32 *)(xspi->rx_ptr) = data;
		break;
		break;
	}
	}


	xspi->rx_ptr += xspi->bits_per_word / 8;
	xspi->rx_ptr += xspi->bytes_per_word;
}
}


static void xspi_init_hw(struct xilinx_spi *xspi)
static void xspi_init_hw(struct xilinx_spi *xspi)
@@ -246,7 +246,7 @@ static int xilinx_spi_txrx_bufs(struct spi_device *spi, struct spi_transfer *t)


	xspi->tx_ptr = t->tx_buf;
	xspi->tx_ptr = t->tx_buf;
	xspi->rx_ptr = t->rx_buf;
	xspi->rx_ptr = t->rx_buf;
	xspi->remaining_words = (t->len * 8) / xspi->bits_per_word;
	xspi->remaining_words = t->len / xspi->bytes_per_word;
	reinit_completion(&xspi->done);
	reinit_completion(&xspi->done);


	while (xspi->remaining_words) {
	while (xspi->remaining_words) {
@@ -410,7 +410,7 @@ static int xilinx_spi_probe(struct platform_device *pdev)
	}
	}


	master->bits_per_word_mask = SPI_BPW_MASK(bits_per_word);
	master->bits_per_word_mask = SPI_BPW_MASK(bits_per_word);
	xspi->bits_per_word = bits_per_word;
	xspi->bytes_per_word = bits_per_word / 8;
	xspi->buffer_size = xilinx_spi_find_buffer_size(xspi);
	xspi->buffer_size = xilinx_spi_find_buffer_size(xspi);


	xspi->irq = platform_get_irq(pdev, 0);
	xspi->irq = platform_get_irq(pdev, 0);