Commit cb64ca54 authored by Axel Lin's avatar Axel Lin Committed by Mark Brown

spi: qup: Convert ot let spi core handle checking transfer speed

Set master->max_speed_hz then spi core will handle checking transfer speed.
So we can remove the same checking in this driver.

Also remove checking spi->chip_select in spi_qup_setup(), the checking is done
by spi core.
Signed-off-by: default avatarAxel Lin <axel.lin@ingics.com>
Acked-by: default avatarIvan T. Ivanov <iivanov@mm-sol.com>
Signed-off-by: default avatarMark Brown <broonie@linaro.org>
parent 81b045fe
...@@ -134,7 +134,6 @@ struct spi_qup { ...@@ -134,7 +134,6 @@ struct spi_qup {
struct clk *cclk; /* core clock */ struct clk *cclk; /* core clock */
struct clk *iclk; /* interface clock */ struct clk *iclk; /* interface clock */
int irq; int irq;
u32 max_speed_hz;
spinlock_t lock; spinlock_t lock;
int in_fifo_sz; int in_fifo_sz;
...@@ -517,18 +516,6 @@ static int spi_qup_setup(struct spi_device *spi) ...@@ -517,18 +516,6 @@ static int spi_qup_setup(struct spi_device *spi)
struct spi_qup *controller = spi_master_get_devdata(spi->master); struct spi_qup *controller = spi_master_get_devdata(spi->master);
struct spi_qup_device *chip = spi_get_ctldata(spi); struct spi_qup_device *chip = spi_get_ctldata(spi);
if (spi->chip_select >= spi->master->num_chipselect) {
dev_err(controller->dev, "invalid chip_select %d\n",
spi->chip_select);
return -EINVAL;
}
if (spi->max_speed_hz > controller->max_speed_hz) {
dev_err(controller->dev, "invalid max_speed_hz %d\n",
spi->max_speed_hz);
return -EINVAL;
}
if (!chip) { if (!chip) {
/* First setup */ /* First setup */
chip = kzalloc(sizeof(*chip), GFP_KERNEL); chip = kzalloc(sizeof(*chip), GFP_KERNEL);
...@@ -629,6 +616,7 @@ static int spi_qup_probe(struct platform_device *pdev) ...@@ -629,6 +616,7 @@ static int spi_qup_probe(struct platform_device *pdev)
master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LOOP; master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LOOP;
master->num_chipselect = SPI_NUM_CHIPSELECTS; master->num_chipselect = SPI_NUM_CHIPSELECTS;
master->bits_per_word_mask = SPI_BPW_RANGE_MASK(4, 32); master->bits_per_word_mask = SPI_BPW_RANGE_MASK(4, 32);
master->max_speed_hz = max_freq;
master->setup = spi_qup_setup; master->setup = spi_qup_setup;
master->cleanup = spi_qup_cleanup; master->cleanup = spi_qup_cleanup;
master->set_cs = spi_qup_set_cs; master->set_cs = spi_qup_set_cs;
...@@ -645,7 +633,6 @@ static int spi_qup_probe(struct platform_device *pdev) ...@@ -645,7 +633,6 @@ static int spi_qup_probe(struct platform_device *pdev)
controller->iclk = iclk; controller->iclk = iclk;
controller->cclk = cclk; controller->cclk = cclk;
controller->irq = irq; controller->irq = irq;
controller->max_speed_hz = max_freq;
spin_lock_init(&controller->lock); spin_lock_init(&controller->lock);
init_completion(&controller->done); init_completion(&controller->done);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment