mirror of
https://github.com/torvalds/linux.git
synced 2026-05-05 23:05:25 -04:00
spi: imx: add i.MX51 ECSPI target mode support
ECSPI in i.MX51 and i.MX53 support target mode. Current code only support i.MX53. Remove is_imx53_ecspi() check for target mode to support i.MX51. Signed-off-by: Carlos Song <carlos.song@nxp.com> Link: https://patch.msgid.link/20251027110256.543314-1-carlos.song@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
@@ -586,7 +586,7 @@ static int mx51_ecspi_prepare_message(struct spi_imx_data *spi_imx,
|
||||
* is not functional for imx53 Soc, config SPI burst completed when
|
||||
* BURST_LENGTH + 1 bits are received
|
||||
*/
|
||||
if (spi_imx->target_mode && is_imx53_ecspi(spi_imx))
|
||||
if (spi_imx->target_mode)
|
||||
cfg &= ~MX51_ECSPI_CONFIG_SBBCTRL(channel);
|
||||
else
|
||||
cfg |= MX51_ECSPI_CONFIG_SBBCTRL(channel);
|
||||
@@ -674,7 +674,7 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx,
|
||||
|
||||
/* Clear BL field and set the right value */
|
||||
ctrl &= ~MX51_ECSPI_CTRL_BL_MASK;
|
||||
if (spi_imx->target_mode && is_imx53_ecspi(spi_imx))
|
||||
if (spi_imx->target_mode)
|
||||
ctrl |= (spi_imx->target_burst * 8 - 1)
|
||||
<< MX51_ECSPI_CTRL_BL_OFFSET;
|
||||
else {
|
||||
@@ -1367,7 +1367,7 @@ static int spi_imx_setupxfer(struct spi_device *spi,
|
||||
spi_imx->rx_only = ((t->tx_buf == NULL)
|
||||
|| (t->tx_buf == spi->controller->dummy_tx));
|
||||
|
||||
if (is_imx53_ecspi(spi_imx) && spi_imx->target_mode) {
|
||||
if (spi_imx->target_mode) {
|
||||
spi_imx->rx = mx53_ecspi_rx_target;
|
||||
spi_imx->tx = mx53_ecspi_tx_target;
|
||||
spi_imx->target_burst = t->len;
|
||||
@@ -1641,8 +1641,7 @@ static int spi_imx_pio_transfer_target(struct spi_device *spi,
|
||||
struct spi_imx_data *spi_imx = spi_controller_get_devdata(spi->controller);
|
||||
int ret = 0;
|
||||
|
||||
if (is_imx53_ecspi(spi_imx) &&
|
||||
transfer->len > MX53_MAX_TRANSFER_BYTES) {
|
||||
if (transfer->len > MX53_MAX_TRANSFER_BYTES) {
|
||||
dev_err(&spi->dev, "Transaction too big, max size is %d bytes\n",
|
||||
MX53_MAX_TRANSFER_BYTES);
|
||||
return -EMSGSIZE;
|
||||
|
||||
Reference in New Issue
Block a user