Lines Matching refs:cs
162 struct zs_chanstate *cs;
177 cs = &zsc->zsc_cs_store[channel];
179 zsc->zsc_cs[channel] = cs;
184 memcpy(cs, zs_conschan, sizeof(struct zs_chanstate));
185 zs_conschan = cs;
188 cs->cs_reg_csr = zs_base + chanoff[channel] + ZS_CSR;
189 cs->cs_reg_data = zs_base + chanoff[channel] + ZS_DATA;
190 memcpy(cs->cs_creg, zs_init_reg, 16);
191 memcpy(cs->cs_preg, zs_init_reg, 16);
192 cs->cs_defspeed = zs_defspeed;
196 zs_lock_init(cs);
197 cs->cs_defcflag = zs_def_cflag;
199 cs->cs_channel = channel;
200 cs->cs_private = NULL;
201 cs->cs_ops = &zsops_null;
202 cs->cs_brg_clk = PCLK / 16;
205 cs->cs_rr0_dcd = ZSRR0_DCD;
206 cs->cs_rr0_cts = 0;
207 cs->cs_wr5_dtr = ZSWR5_DTR | ZSWR5_RTS;
208 cs->cs_wr5_rts = 0;
217 zs_write_reg(cs, 9, 0);
231 zs_write_reg(cs, 9, reset);
247 cs = zsc->zsc_cs[0];
250 zs_write_reg(cs, 2, 0);
252 zs_write_reg(cs, 9, zs_init_reg[9]);
297 zs_get_speed(struct zs_chanstate *cs)
301 tconst = zs_read_reg(cs, 12);
302 tconst |= zs_read_reg(cs, 13) << 8;
303 return TCONST_TO_BPS(cs->cs_brg_clk, tconst);
311 zs_set_speed(struct zs_chanstate *cs, int bps)
319 if (cs->cs_brg_clk == 0)
323 tconst = BPS_TO_TCONST(cs->cs_brg_clk, bps);
328 real_bps = TCONST_TO_BPS(cs->cs_brg_clk, tconst);
334 cs->cs_preg[12] = tconst;
335 cs->cs_preg[13] = tconst >> 8;
342 zs_set_modes(struct zs_chanstate *cs, int cflag)
354 cs->cs_rr0_pps = 0;
356 cs->cs_rr0_dcd = 0;
358 cs->cs_rr0_pps = ZSRR0_DCD;
360 cs->cs_rr0_dcd = ZSRR0_DCD;
362 cs->cs_wr5_dtr = ZSWR5_DTR;
363 cs->cs_wr5_rts = ZSWR5_RTS;
364 cs->cs_rr0_cts = ZSRR0_CTS;
366 cs->cs_wr5_dtr = 0;
367 cs->cs_wr5_rts = ZSWR5_DTR;
368 cs->cs_rr0_cts = ZSRR0_DCD;
370 cs->cs_wr5_dtr = ZSWR5_DTR | ZSWR5_RTS;
371 cs->cs_wr5_rts = 0;
372 cs->cs_rr0_cts = 0;
386 zs_read_reg(struct zs_chanstate *cs, uint8_t reg)
390 *cs->cs_reg_csr = reg;
392 val = *cs->cs_reg_csr;
398 zs_write_reg(struct zs_chanstate *cs, uint8_t reg, uint8_t val)
401 *cs->cs_reg_csr = reg;
403 *cs->cs_reg_csr = val;
408 zs_read_csr(struct zs_chanstate *cs)
412 val = *cs->cs_reg_csr;
418 zs_write_csr(struct zs_chanstate *cs, uint8_t val)
421 *cs->cs_reg_csr = val;
426 zs_read_data(struct zs_chanstate *cs)
430 val = *cs->cs_reg_data;
436 zs_write_data(struct zs_chanstate *cs, uint8_t val)
439 *cs->cs_reg_data = val;
444 zs_abort(struct zs_chanstate *cs)
458 struct zs_chanstate *cs = arg;
465 rr0 = *cs->cs_reg_csr;
469 c = *cs->cs_reg_data;
482 struct zs_chanstate *cs = arg;
489 rr0 = *cs->cs_reg_csr;
493 *cs->cs_reg_data = c;
509 struct zs_chanstate *cs;
517 zs_conschan = cs = &zs_conschan_store;
520 cs->cs_reg_csr = zs_cons + ZS_CSR;
521 cs->cs_reg_data = zs_cons + ZS_DATA;
524 memcpy(cs->cs_preg, zs_init_reg, 16);
525 cs->cs_preg[5] |= ZSWR5_DTR | ZSWR5_RTS;
527 cs->cs_preg[12] = BPS_TO_TCONST(PCLK / 16, ZS_DEFSPEED);
528 cs->cs_preg[13] = 0;
529 cs->cs_defspeed = ZS_DEFSPEED;
532 zs_write_reg(cs, 9, 0);
535 zs_write_reg(cs, 9, ZSWR9_HARD_RESET);
538 zs_loadchannelregs(cs);