Lines Matching defs:cr
168 motoi2c_busy_wait(struct motoi2c_softc *sc, uint8_t cr)
179 DPRINTF(("%s: timeout (sr=%#x, cr=%#x)\n",
186 if ((cr & CR_MTX) && (sr & SR_RXAK)) {
213 uint8_t cr;
217 cr = I2C_READ(I2CCR);
220 DPRINTF(("%s(%#x,%#x,%p,%zu,%p,%zu,%#x): sr=%#x cr=%#x\n",
222 sr, cr));
225 if ((cr & CR_MSTA) == 0 && (sr & SR_MBB) != 0) {
239 cr = sc->sc_enable_mask | CR_MTX | CR_MSTA;
240 I2C_WRITE(I2CCR, cr);
242 DPRINTF(("%s: started: sr=%#x cr=%#x/%#x\n",
243 __func__, I2C_READ(I2CSR), cr, I2C_READ(I2CCR)));
247 DPRINTF(("%s: lost bus: sr=%#x cr=%#x/%#x\n",
248 __func__, I2C_READ(I2CSR), cr, I2C_READ(I2CCR)));
258 DPRINTF(("%s: reacquired bus: sr=%#x cr=%#x/%#x\n",
259 __func__, I2C_READ(I2CSR), cr, I2C_READ(I2CCR)));
267 error = motoi2c_busy_wait(sc, cr);
279 error = motoi2c_busy_wait(sc, cr);
281 DPRINTF(("%s: error sending cmd byte %zu (cr=%#x/%#x):"
282 " %d\n", __func__, i, I2C_READ(I2CCR), cr, error));
288 KASSERT(cr & CR_MTX);
289 KASSERT((cr & CR_TXAK) == 0);
290 I2C_WRITE(I2CCR, cr | CR_RSTA);
292 DPRINTF(("%s: restarted(read): sr=%#x cr=%#x(%#x)\n",
293 __func__, I2C_READ(I2CSR), cr | CR_RSTA, I2C_READ(I2CCR)));
300 error = motoi2c_busy_wait(sc, cr);
310 cr &= ~CR_MTX; /* clear transmit flags */
312 cr |= CR_TXAK;
313 I2C_WRITE(I2CCR, cr);
324 error = motoi2c_busy_wait(sc, cr);
331 cr |= CR_TXAK;
332 I2C_WRITE(I2CCR, cr);
334 cr = sc->sc_enable_mask | CR_TXAK;
335 I2C_WRITE(I2CCR, cr);
341 cr = sc->sc_enable_mask | CR_TXAK;
342 I2C_WRITE(I2CCR, cr);
345 error = motoi2c_busy_wait(sc, cr);
356 error = motoi2c_busy_wait(sc, cr);
370 if (error || (cr & CR_TXAK) || ((cr & CR_MSTA) && I2C_OP_STOP_P(op))) {
371 cr = sc->sc_enable_mask;
372 I2C_WRITE(I2CCR, cr);
374 DPRINTF(("%s: stopping: cr=%#x/%#x\n", __func__,
375 cr, I2C_READ(I2CCR)));
378 DPRINTF(("%s: exit sr=%#x cr=%#x: %d\n", __func__,