diff options
author | Michal Nazarewicz <mina86@mina86.com> | 2013-12-08 10:35:09 -0500 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-12-09 13:12:54 -0500 |
commit | 48c3fc93803a27bb9d2c79d718cf142974f080c8 (patch) | |
tree | 2dc231b0ad36511d418efb0f7b053a7e6b441936 /drivers | |
parent | 6ce4eac1f600b34f2f7f58f9cd8f0503d79e42ae (diff) |
spi: tegra114: use u32 for 32-bit register values
Previously used “unsigned long” may lead to confusion should the code
be compiled for 64-bit machine.
This commit also removes some unused fields of the tegra_spi_data
structure as well as removes duplicated #defines.
Signed-off-by: Michal Nazarewicz <mina86@mina86.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/spi/spi-tegra114.c | 98 |
1 files changed, 34 insertions, 64 deletions
diff --git a/drivers/spi/spi-tegra114.c b/drivers/spi/spi-tegra114.c index aaecfb3ebf58..47b93cc4bd19 100644 --- a/drivers/spi/spi-tegra114.c +++ b/drivers/spi/spi-tegra114.c | |||
@@ -54,11 +54,8 @@ | |||
54 | #define SPI_CS_SS_VAL (1 << 20) | 54 | #define SPI_CS_SS_VAL (1 << 20) |
55 | #define SPI_CS_SW_HW (1 << 21) | 55 | #define SPI_CS_SW_HW (1 << 21) |
56 | /* SPI_CS_POL_INACTIVE bits are default high */ | 56 | /* SPI_CS_POL_INACTIVE bits are default high */ |
57 | #define SPI_CS_POL_INACTIVE 22 | 57 | /* n from 0 to 3 */ |
58 | #define SPI_CS_POL_INACTIVE_0 (1 << 22) | 58 | #define SPI_CS_POL_INACTIVE(n) (1 << (22 + (n))) |
59 | #define SPI_CS_POL_INACTIVE_1 (1 << 23) | ||
60 | #define SPI_CS_POL_INACTIVE_2 (1 << 24) | ||
61 | #define SPI_CS_POL_INACTIVE_3 (1 << 25) | ||
62 | #define SPI_CS_POL_INACTIVE_MASK (0xF << 22) | 59 | #define SPI_CS_POL_INACTIVE_MASK (0xF << 22) |
63 | 60 | ||
64 | #define SPI_CS_SEL_0 (0 << 26) | 61 | #define SPI_CS_SEL_0 (0 << 26) |
@@ -165,9 +162,6 @@ | |||
165 | #define MAX_HOLD_CYCLES 16 | 162 | #define MAX_HOLD_CYCLES 16 |
166 | #define SPI_DEFAULT_SPEED 25000000 | 163 | #define SPI_DEFAULT_SPEED 25000000 |
167 | 164 | ||
168 | #define MAX_CHIP_SELECT 4 | ||
169 | #define SPI_FIFO_DEPTH 64 | ||
170 | |||
171 | struct tegra_spi_data { | 165 | struct tegra_spi_data { |
172 | struct device *dev; | 166 | struct device *dev; |
173 | struct spi_master *master; | 167 | struct spi_master *master; |
@@ -184,7 +178,6 @@ struct tegra_spi_data { | |||
184 | struct spi_device *cur_spi; | 178 | struct spi_device *cur_spi; |
185 | struct spi_device *cs_control; | 179 | struct spi_device *cs_control; |
186 | unsigned cur_pos; | 180 | unsigned cur_pos; |
187 | unsigned cur_len; | ||
188 | unsigned words_per_32bit; | 181 | unsigned words_per_32bit; |
189 | unsigned bytes_per_word; | 182 | unsigned bytes_per_word; |
190 | unsigned curr_dma_words; | 183 | unsigned curr_dma_words; |
@@ -204,12 +197,10 @@ struct tegra_spi_data { | |||
204 | u32 rx_status; | 197 | u32 rx_status; |
205 | u32 status_reg; | 198 | u32 status_reg; |
206 | bool is_packed; | 199 | bool is_packed; |
207 | unsigned long packed_size; | ||
208 | 200 | ||
209 | u32 command1_reg; | 201 | u32 command1_reg; |
210 | u32 dma_control_reg; | 202 | u32 dma_control_reg; |
211 | u32 def_command1_reg; | 203 | u32 def_command1_reg; |
212 | u32 spi_cs_timing; | ||
213 | 204 | ||
214 | struct completion xfer_completion; | 205 | struct completion xfer_completion; |
215 | struct spi_transfer *curr_xfer; | 206 | struct spi_transfer *curr_xfer; |
@@ -227,14 +218,14 @@ struct tegra_spi_data { | |||
227 | static int tegra_spi_runtime_suspend(struct device *dev); | 218 | static int tegra_spi_runtime_suspend(struct device *dev); |
228 | static int tegra_spi_runtime_resume(struct device *dev); | 219 | static int tegra_spi_runtime_resume(struct device *dev); |
229 | 220 | ||
230 | static inline unsigned long tegra_spi_readl(struct tegra_spi_data *tspi, | 221 | static inline u32 tegra_spi_readl(struct tegra_spi_data *tspi, |
231 | unsigned long reg) | 222 | unsigned long reg) |
232 | { | 223 | { |
233 | return readl(tspi->base + reg); | 224 | return readl(tspi->base + reg); |
234 | } | 225 | } |
235 | 226 | ||
236 | static inline void tegra_spi_writel(struct tegra_spi_data *tspi, | 227 | static inline void tegra_spi_writel(struct tegra_spi_data *tspi, |
237 | unsigned long val, unsigned long reg) | 228 | u32 val, unsigned long reg) |
238 | { | 229 | { |
239 | writel(val, tspi->base + reg); | 230 | writel(val, tspi->base + reg); |
240 | 231 | ||
@@ -245,7 +236,7 @@ static inline void tegra_spi_writel(struct tegra_spi_data *tspi, | |||
245 | 236 | ||
246 | static void tegra_spi_clear_status(struct tegra_spi_data *tspi) | 237 | static void tegra_spi_clear_status(struct tegra_spi_data *tspi) |
247 | { | 238 | { |
248 | unsigned long val; | 239 | u32 val; |
249 | 240 | ||
250 | /* Write 1 to clear status register */ | 241 | /* Write 1 to clear status register */ |
251 | val = tegra_spi_readl(tspi, SPI_TRANS_STATUS); | 242 | val = tegra_spi_readl(tspi, SPI_TRANS_STATUS); |
@@ -296,10 +287,9 @@ static unsigned tegra_spi_fill_tx_fifo_from_client_txbuf( | |||
296 | { | 287 | { |
297 | unsigned nbytes; | 288 | unsigned nbytes; |
298 | unsigned tx_empty_count; | 289 | unsigned tx_empty_count; |
299 | unsigned long fifo_status; | 290 | u32 fifo_status; |
300 | unsigned max_n_32bit; | 291 | unsigned max_n_32bit; |
301 | unsigned i, count; | 292 | unsigned i, count; |
302 | unsigned long x; | ||
303 | unsigned int written_words; | 293 | unsigned int written_words; |
304 | unsigned fifo_words_left; | 294 | unsigned fifo_words_left; |
305 | u8 *tx_buf = (u8 *)t->tx_buf + tspi->cur_tx_pos; | 295 | u8 *tx_buf = (u8 *)t->tx_buf + tspi->cur_tx_pos; |
@@ -313,9 +303,9 @@ static unsigned tegra_spi_fill_tx_fifo_from_client_txbuf( | |||
313 | nbytes = written_words * tspi->bytes_per_word; | 303 | nbytes = written_words * tspi->bytes_per_word; |
314 | max_n_32bit = DIV_ROUND_UP(nbytes, 4); | 304 | max_n_32bit = DIV_ROUND_UP(nbytes, 4); |
315 | for (count = 0; count < max_n_32bit; count++) { | 305 | for (count = 0; count < max_n_32bit; count++) { |
316 | x = 0; | 306 | u32 x = 0; |
317 | for (i = 0; (i < 4) && nbytes; i++, nbytes--) | 307 | for (i = 0; (i < 4) && nbytes; i++, nbytes--) |
318 | x |= (*tx_buf++) << (i*8); | 308 | x |= (u32)(*tx_buf++) << (i * 8); |
319 | tegra_spi_writel(tspi, x, SPI_TX_FIFO); | 309 | tegra_spi_writel(tspi, x, SPI_TX_FIFO); |
320 | } | 310 | } |
321 | } else { | 311 | } else { |
@@ -323,10 +313,10 @@ static unsigned tegra_spi_fill_tx_fifo_from_client_txbuf( | |||
323 | written_words = max_n_32bit; | 313 | written_words = max_n_32bit; |
324 | nbytes = written_words * tspi->bytes_per_word; | 314 | nbytes = written_words * tspi->bytes_per_word; |
325 | for (count = 0; count < max_n_32bit; count++) { | 315 | for (count = 0; count < max_n_32bit; count++) { |
326 | x = 0; | 316 | u32 x = 0; |
327 | for (i = 0; nbytes && (i < tspi->bytes_per_word); | 317 | for (i = 0; nbytes && (i < tspi->bytes_per_word); |
328 | i++, nbytes--) | 318 | i++, nbytes--) |
329 | x |= ((*tx_buf++) << i*8); | 319 | x |= (u32)(*tx_buf++) << (i * 8); |
330 | tegra_spi_writel(tspi, x, SPI_TX_FIFO); | 320 | tegra_spi_writel(tspi, x, SPI_TX_FIFO); |
331 | } | 321 | } |
332 | } | 322 | } |
@@ -338,9 +328,8 @@ static unsigned int tegra_spi_read_rx_fifo_to_client_rxbuf( | |||
338 | struct tegra_spi_data *tspi, struct spi_transfer *t) | 328 | struct tegra_spi_data *tspi, struct spi_transfer *t) |
339 | { | 329 | { |
340 | unsigned rx_full_count; | 330 | unsigned rx_full_count; |
341 | unsigned long fifo_status; | 331 | u32 fifo_status; |
342 | unsigned i, count; | 332 | unsigned i, count; |
343 | unsigned long x; | ||
344 | unsigned int read_words = 0; | 333 | unsigned int read_words = 0; |
345 | unsigned len; | 334 | unsigned len; |
346 | u8 *rx_buf = (u8 *)t->rx_buf + tspi->cur_rx_pos; | 335 | u8 *rx_buf = (u8 *)t->rx_buf + tspi->cur_rx_pos; |
@@ -350,20 +339,16 @@ static unsigned int tegra_spi_read_rx_fifo_to_client_rxbuf( | |||
350 | if (tspi->is_packed) { | 339 | if (tspi->is_packed) { |
351 | len = tspi->curr_dma_words * tspi->bytes_per_word; | 340 | len = tspi->curr_dma_words * tspi->bytes_per_word; |
352 | for (count = 0; count < rx_full_count; count++) { | 341 | for (count = 0; count < rx_full_count; count++) { |
353 | x = tegra_spi_readl(tspi, SPI_RX_FIFO); | 342 | u32 x = tegra_spi_readl(tspi, SPI_RX_FIFO); |
354 | for (i = 0; len && (i < 4); i++, len--) | 343 | for (i = 0; len && (i < 4); i++, len--) |
355 | *rx_buf++ = (x >> i*8) & 0xFF; | 344 | *rx_buf++ = (x >> i*8) & 0xFF; |
356 | } | 345 | } |
357 | tspi->cur_rx_pos += tspi->curr_dma_words * tspi->bytes_per_word; | 346 | tspi->cur_rx_pos += tspi->curr_dma_words * tspi->bytes_per_word; |
358 | read_words += tspi->curr_dma_words; | 347 | read_words += tspi->curr_dma_words; |
359 | } else { | 348 | } else { |
360 | unsigned int rx_mask; | 349 | u32 rx_mask = ((u32)1 << t->bits_per_word) - 1; |
361 | unsigned int bits_per_word = t->bits_per_word; | ||
362 | |||
363 | rx_mask = (1 << bits_per_word) - 1; | ||
364 | for (count = 0; count < rx_full_count; count++) { | 350 | for (count = 0; count < rx_full_count; count++) { |
365 | x = tegra_spi_readl(tspi, SPI_RX_FIFO); | 351 | u32 x = tegra_spi_readl(tspi, SPI_RX_FIFO) & rx_mask; |
366 | x &= rx_mask; | ||
367 | for (i = 0; (i < tspi->bytes_per_word); i++) | 352 | for (i = 0; (i < tspi->bytes_per_word); i++) |
368 | *rx_buf++ = (x >> (i*8)) & 0xFF; | 353 | *rx_buf++ = (x >> (i*8)) & 0xFF; |
369 | } | 354 | } |
@@ -376,27 +361,24 @@ static unsigned int tegra_spi_read_rx_fifo_to_client_rxbuf( | |||
376 | static void tegra_spi_copy_client_txbuf_to_spi_txbuf( | 361 | static void tegra_spi_copy_client_txbuf_to_spi_txbuf( |
377 | struct tegra_spi_data *tspi, struct spi_transfer *t) | 362 | struct tegra_spi_data *tspi, struct spi_transfer *t) |
378 | { | 363 | { |
379 | unsigned len; | ||
380 | |||
381 | /* Make the dma buffer to read by cpu */ | 364 | /* Make the dma buffer to read by cpu */ |
382 | dma_sync_single_for_cpu(tspi->dev, tspi->tx_dma_phys, | 365 | dma_sync_single_for_cpu(tspi->dev, tspi->tx_dma_phys, |
383 | tspi->dma_buf_size, DMA_TO_DEVICE); | 366 | tspi->dma_buf_size, DMA_TO_DEVICE); |
384 | 367 | ||
385 | if (tspi->is_packed) { | 368 | if (tspi->is_packed) { |
386 | len = tspi->curr_dma_words * tspi->bytes_per_word; | 369 | unsigned len = tspi->curr_dma_words * tspi->bytes_per_word; |
387 | memcpy(tspi->tx_dma_buf, t->tx_buf + tspi->cur_pos, len); | 370 | memcpy(tspi->tx_dma_buf, t->tx_buf + tspi->cur_pos, len); |
388 | } else { | 371 | } else { |
389 | unsigned int i; | 372 | unsigned int i; |
390 | unsigned int count; | 373 | unsigned int count; |
391 | u8 *tx_buf = (u8 *)t->tx_buf + tspi->cur_tx_pos; | 374 | u8 *tx_buf = (u8 *)t->tx_buf + tspi->cur_tx_pos; |
392 | unsigned consume = tspi->curr_dma_words * tspi->bytes_per_word; | 375 | unsigned consume = tspi->curr_dma_words * tspi->bytes_per_word; |
393 | unsigned int x; | ||
394 | 376 | ||
395 | for (count = 0; count < tspi->curr_dma_words; count++) { | 377 | for (count = 0; count < tspi->curr_dma_words; count++) { |
396 | x = 0; | 378 | u32 x = 0; |
397 | for (i = 0; consume && (i < tspi->bytes_per_word); | 379 | for (i = 0; consume && (i < tspi->bytes_per_word); |
398 | i++, consume--) | 380 | i++, consume--) |
399 | x |= ((*tx_buf++) << i * 8); | 381 | x |= (u32)(*tx_buf++) << (i * 8); |
400 | tspi->tx_dma_buf[count] = x; | 382 | tspi->tx_dma_buf[count] = x; |
401 | } | 383 | } |
402 | } | 384 | } |
@@ -410,27 +392,21 @@ static void tegra_spi_copy_client_txbuf_to_spi_txbuf( | |||
410 | static void tegra_spi_copy_spi_rxbuf_to_client_rxbuf( | 392 | static void tegra_spi_copy_spi_rxbuf_to_client_rxbuf( |
411 | struct tegra_spi_data *tspi, struct spi_transfer *t) | 393 | struct tegra_spi_data *tspi, struct spi_transfer *t) |
412 | { | 394 | { |
413 | unsigned len; | ||
414 | |||
415 | /* Make the dma buffer to read by cpu */ | 395 | /* Make the dma buffer to read by cpu */ |
416 | dma_sync_single_for_cpu(tspi->dev, tspi->rx_dma_phys, | 396 | dma_sync_single_for_cpu(tspi->dev, tspi->rx_dma_phys, |
417 | tspi->dma_buf_size, DMA_FROM_DEVICE); | 397 | tspi->dma_buf_size, DMA_FROM_DEVICE); |
418 | 398 | ||
419 | if (tspi->is_packed) { | 399 | if (tspi->is_packed) { |
420 | len = tspi->curr_dma_words * tspi->bytes_per_word; | 400 | unsigned len = tspi->curr_dma_words * tspi->bytes_per_word; |
421 | memcpy(t->rx_buf + tspi->cur_rx_pos, tspi->rx_dma_buf, len); | 401 | memcpy(t->rx_buf + tspi->cur_rx_pos, tspi->rx_dma_buf, len); |
422 | } else { | 402 | } else { |
423 | unsigned int i; | 403 | unsigned int i; |
424 | unsigned int count; | 404 | unsigned int count; |
425 | unsigned char *rx_buf = t->rx_buf + tspi->cur_rx_pos; | 405 | unsigned char *rx_buf = t->rx_buf + tspi->cur_rx_pos; |
426 | unsigned int x; | 406 | u32 rx_mask = ((u32)1 << t->bits_per_word) - 1; |
427 | unsigned int rx_mask; | ||
428 | unsigned int bits_per_word = t->bits_per_word; | ||
429 | 407 | ||
430 | rx_mask = (1 << bits_per_word) - 1; | ||
431 | for (count = 0; count < tspi->curr_dma_words; count++) { | 408 | for (count = 0; count < tspi->curr_dma_words; count++) { |
432 | x = tspi->rx_dma_buf[count]; | 409 | u32 x = tspi->rx_dma_buf[count] & rx_mask; |
433 | x &= rx_mask; | ||
434 | for (i = 0; (i < tspi->bytes_per_word); i++) | 410 | for (i = 0; (i < tspi->bytes_per_word); i++) |
435 | *rx_buf++ = (x >> (i*8)) & 0xFF; | 411 | *rx_buf++ = (x >> (i*8)) & 0xFF; |
436 | } | 412 | } |
@@ -490,16 +466,16 @@ static int tegra_spi_start_rx_dma(struct tegra_spi_data *tspi, int len) | |||
490 | static int tegra_spi_start_dma_based_transfer( | 466 | static int tegra_spi_start_dma_based_transfer( |
491 | struct tegra_spi_data *tspi, struct spi_transfer *t) | 467 | struct tegra_spi_data *tspi, struct spi_transfer *t) |
492 | { | 468 | { |
493 | unsigned long val; | 469 | u32 val; |
494 | unsigned int len; | 470 | unsigned int len; |
495 | int ret = 0; | 471 | int ret = 0; |
496 | unsigned long status; | 472 | u32 status; |
497 | 473 | ||
498 | /* Make sure that Rx and Tx fifo are empty */ | 474 | /* Make sure that Rx and Tx fifo are empty */ |
499 | status = tegra_spi_readl(tspi, SPI_FIFO_STATUS); | 475 | status = tegra_spi_readl(tspi, SPI_FIFO_STATUS); |
500 | if ((status & SPI_FIFO_EMPTY) != SPI_FIFO_EMPTY) { | 476 | if ((status & SPI_FIFO_EMPTY) != SPI_FIFO_EMPTY) { |
501 | dev_err(tspi->dev, | 477 | dev_err(tspi->dev, "Rx/Tx fifo are not empty status 0x%08x\n", |
502 | "Rx/Tx fifo are not empty status 0x%08lx\n", status); | 478 | (unsigned)status); |
503 | return -EIO; | 479 | return -EIO; |
504 | } | 480 | } |
505 | 481 | ||
@@ -564,7 +540,7 @@ static int tegra_spi_start_dma_based_transfer( | |||
564 | static int tegra_spi_start_cpu_based_transfer( | 540 | static int tegra_spi_start_cpu_based_transfer( |
565 | struct tegra_spi_data *tspi, struct spi_transfer *t) | 541 | struct tegra_spi_data *tspi, struct spi_transfer *t) |
566 | { | 542 | { |
567 | unsigned long val; | 543 | u32 val; |
568 | unsigned cur_words; | 544 | unsigned cur_words; |
569 | 545 | ||
570 | if (tspi->cur_direction & DATA_DIR_TX) | 546 | if (tspi->cur_direction & DATA_DIR_TX) |
@@ -677,13 +653,13 @@ static void tegra_spi_deinit_dma_param(struct tegra_spi_data *tspi, | |||
677 | dma_release_channel(dma_chan); | 653 | dma_release_channel(dma_chan); |
678 | } | 654 | } |
679 | 655 | ||
680 | static unsigned long tegra_spi_setup_transfer_one(struct spi_device *spi, | 656 | static u32 tegra_spi_setup_transfer_one(struct spi_device *spi, |
681 | struct spi_transfer *t, bool is_first_of_msg) | 657 | struct spi_transfer *t, bool is_first_of_msg) |
682 | { | 658 | { |
683 | struct tegra_spi_data *tspi = spi_master_get_devdata(spi->master); | 659 | struct tegra_spi_data *tspi = spi_master_get_devdata(spi->master); |
684 | u32 speed = t->speed_hz; | 660 | u32 speed = t->speed_hz; |
685 | u8 bits_per_word = t->bits_per_word; | 661 | u8 bits_per_word = t->bits_per_word; |
686 | unsigned long command1; | 662 | u32 command1; |
687 | int req_mode; | 663 | int req_mode; |
688 | 664 | ||
689 | if (speed != tspi->cur_speed) { | 665 | if (speed != tspi->cur_speed) { |
@@ -738,7 +714,7 @@ static unsigned long tegra_spi_setup_transfer_one(struct spi_device *spi, | |||
738 | } | 714 | } |
739 | 715 | ||
740 | static int tegra_spi_start_transfer_one(struct spi_device *spi, | 716 | static int tegra_spi_start_transfer_one(struct spi_device *spi, |
741 | struct spi_transfer *t, unsigned long command1) | 717 | struct spi_transfer *t, u32 command1) |
742 | { | 718 | { |
743 | struct tegra_spi_data *tspi = spi_master_get_devdata(spi->master); | 719 | struct tegra_spi_data *tspi = spi_master_get_devdata(spi->master); |
744 | unsigned total_fifo_words; | 720 | unsigned total_fifo_words; |
@@ -763,8 +739,8 @@ static int tegra_spi_start_transfer_one(struct spi_device *spi, | |||
763 | tegra_spi_writel(tspi, command1, SPI_COMMAND1); | 739 | tegra_spi_writel(tspi, command1, SPI_COMMAND1); |
764 | tspi->command1_reg = command1; | 740 | tspi->command1_reg = command1; |
765 | 741 | ||
766 | dev_dbg(tspi->dev, "The def 0x%x and written 0x%lx\n", | 742 | dev_dbg(tspi->dev, "The def 0x%x and written 0x%x\n", |
767 | tspi->def_command1_reg, command1); | 743 | tspi->def_command1_reg, (unsigned)command1); |
768 | 744 | ||
769 | if (total_fifo_words > SPI_FIFO_DEPTH) | 745 | if (total_fifo_words > SPI_FIFO_DEPTH) |
770 | ret = tegra_spi_start_dma_based_transfer(tspi, t); | 746 | ret = tegra_spi_start_dma_based_transfer(tspi, t); |
@@ -776,15 +752,9 @@ static int tegra_spi_start_transfer_one(struct spi_device *spi, | |||
776 | static int tegra_spi_setup(struct spi_device *spi) | 752 | static int tegra_spi_setup(struct spi_device *spi) |
777 | { | 753 | { |
778 | struct tegra_spi_data *tspi = spi_master_get_devdata(spi->master); | 754 | struct tegra_spi_data *tspi = spi_master_get_devdata(spi->master); |
779 | unsigned long val; | 755 | u32 val; |
780 | unsigned long flags; | 756 | unsigned long flags; |
781 | int ret; | 757 | int ret; |
782 | unsigned int cs_pol_bit[MAX_CHIP_SELECT] = { | ||
783 | SPI_CS_POL_INACTIVE_0, | ||
784 | SPI_CS_POL_INACTIVE_1, | ||
785 | SPI_CS_POL_INACTIVE_2, | ||
786 | SPI_CS_POL_INACTIVE_3, | ||
787 | }; | ||
788 | 758 | ||
789 | dev_dbg(&spi->dev, "setup %d bpw, %scpol, %scpha, %dHz\n", | 759 | dev_dbg(&spi->dev, "setup %d bpw, %scpol, %scpha, %dHz\n", |
790 | spi->bits_per_word, | 760 | spi->bits_per_word, |
@@ -806,9 +776,9 @@ static int tegra_spi_setup(struct spi_device *spi) | |||
806 | spin_lock_irqsave(&tspi->lock, flags); | 776 | spin_lock_irqsave(&tspi->lock, flags); |
807 | val = tspi->def_command1_reg; | 777 | val = tspi->def_command1_reg; |
808 | if (spi->mode & SPI_CS_HIGH) | 778 | if (spi->mode & SPI_CS_HIGH) |
809 | val &= ~cs_pol_bit[spi->chip_select]; | 779 | val &= ~SPI_CS_POL_INACTIVE(spi->chip_select); |
810 | else | 780 | else |
811 | val |= cs_pol_bit[spi->chip_select]; | 781 | val |= SPI_CS_POL_INACTIVE(spi->chip_select); |
812 | tspi->def_command1_reg = val; | 782 | tspi->def_command1_reg = val; |
813 | tegra_spi_writel(tspi, tspi->def_command1_reg, SPI_COMMAND1); | 783 | tegra_spi_writel(tspi, tspi->def_command1_reg, SPI_COMMAND1); |
814 | spin_unlock_irqrestore(&tspi->lock, flags); | 784 | spin_unlock_irqrestore(&tspi->lock, flags); |
@@ -842,7 +812,7 @@ static int tegra_spi_transfer_one_message(struct spi_master *master, | |||
842 | msg->actual_length = 0; | 812 | msg->actual_length = 0; |
843 | 813 | ||
844 | list_for_each_entry(xfer, &msg->transfers, transfer_list) { | 814 | list_for_each_entry(xfer, &msg->transfers, transfer_list) { |
845 | unsigned long cmd1; | 815 | u32 cmd1; |
846 | 816 | ||
847 | reinit_completion(&tspi->xfer_completion); | 817 | reinit_completion(&tspi->xfer_completion); |
848 | 818 | ||