Lines Matching full:ss

80 static void sh_qspi_init(struct sh_qspi_slave *ss)  in sh_qspi_init()  argument
84 writeb(SPCR_MSTR, &ss->regs->spcr); in sh_qspi_init()
87 writeb(0x00, &ss->regs->sslp); in sh_qspi_init()
90 writeb(SPPCR_IO3FV|SPPCR_IO2FV, &ss->regs->sppcr); in sh_qspi_init()
93 writeb(0x01, &ss->regs->spbr); in sh_qspi_init()
96 writeb(0x00, &ss->regs->spdcr); in sh_qspi_init()
99 writeb(0x00, &ss->regs->spckd); in sh_qspi_init()
102 writeb(0x00, &ss->regs->sslnd); in sh_qspi_init()
105 writeb(0x00, &ss->regs->spnd); in sh_qspi_init()
108 writew(SPCMD_INIT2, &ss->regs->spcmd0); in sh_qspi_init()
111 setbits_8(&ss->regs->spbfcr, SPBFCR_TXRST|SPBFCR_RXRST); in sh_qspi_init()
114 clrbits_8(&ss->regs->spbfcr, SPBFCR_TXRST|SPBFCR_RXRST); in sh_qspi_init()
117 writeb(0x00, &ss->regs->spscr); in sh_qspi_init()
120 setbits_8(&ss->regs->spcr, SPCR_SPE); in sh_qspi_init()
130 struct sh_qspi_slave *ss = to_sh_qspi(slave); in spi_cs_activate() local
133 writeb(SPCR_MSTR, &ss->regs->spcr); in spi_cs_activate()
136 writew(SPCMD_INIT1, &ss->regs->spcmd0); in spi_cs_activate()
139 setbits_8(&ss->regs->spbfcr, SPBFCR_TXRST|SPBFCR_RXRST); in spi_cs_activate()
142 clrbits_8(&ss->regs->spbfcr, SPBFCR_TXRST|SPBFCR_RXRST); in spi_cs_activate()
145 writeb(0x00, &ss->regs->spscr); in spi_cs_activate()
148 setbits_8(&ss->regs->spcr, SPCR_SPE); in spi_cs_activate()
153 struct sh_qspi_slave *ss = to_sh_qspi(slave); in spi_cs_deactivate() local
156 clrbits_8(&ss->regs->spcr, SPCR_SPE); in spi_cs_deactivate()
167 struct sh_qspi_slave *ss; in spi_setup_slave() local
172 ss = spi_alloc_slave(struct sh_qspi_slave, bus, cs); in spi_setup_slave()
173 if (!ss) { in spi_setup_slave()
178 ss->regs = (struct sh_qspi_regs *)SH_QSPI_BASE; in spi_setup_slave()
181 sh_qspi_init(ss); in spi_setup_slave()
183 return &ss->slave; in spi_setup_slave()
205 struct sh_qspi_slave *ss = to_sh_qspi(slave); in spi_xfer() local
210 u32 *spbmul0 = &ss->regs->spbmul0; in spi_xfer()
248 clrsetbits_8(&ss->regs->spbfcr, SPBFCR_TXTRG | SPBFCR_RXTRG, in spi_xfer()
251 ret = wait_for_bit_8(&ss->regs->spsr, SPSR_SPTEF, in spi_xfer()
257 writeb(*tdata, &ss->regs->spdr); in spi_xfer()
262 ret = wait_for_bit_8(&ss->regs->spsr, SPSR_SPRFF, in spi_xfer()
268 *rdata = readb(&ss->regs->spdr); in spi_xfer()