.. | .. |
---|
478 | 478 | { |
---|
479 | 479 | u32 i; |
---|
480 | 480 | |
---|
481 | | - /* burst size: 1, 2, 4, 8 */ |
---|
482 | | - for (i = 1; i < 8; i <<= 1) { |
---|
| 481 | + /* burst size: 1, 2, 4, 8, 16 */ |
---|
| 482 | + for (i = 1; i < 16; i <<= 1) { |
---|
483 | 483 | if (data_len & i) |
---|
484 | 484 | break; |
---|
485 | 485 | } |
---|
.. | .. |
---|
906 | 906 | cr0 |= ((spi->mode & 0x3) << CR0_SCPH_OFFSET); |
---|
907 | 907 | if (spi->mode & SPI_CS_HIGH) |
---|
908 | 908 | cr0 |= BIT(spi->chip_select) << CR0_SOI_OFFSET; |
---|
| 909 | + if (spi_controller_is_slave(spi->controller)) |
---|
| 910 | + cr0 |= CR0_OPM_SLAVE << CR0_OPM_OFFSET; |
---|
909 | 911 | |
---|
910 | 912 | writel_relaxed(cr0, rs->regs + ROCKCHIP_SPI_CTRLR0); |
---|
911 | 913 | |
---|