Lines Matching refs:cs
203 struct zs_chanstate *cs; in zs_attach() local
217 cs = &zsc->zsc_cs_store[channel]; in zs_attach()
218 zsc->zsc_cs[channel] = cs; in zs_attach()
220 zs_lock_init(cs); in zs_attach()
221 cs->cs_channel = channel; in zs_attach()
222 cs->cs_private = NULL; in zs_attach()
223 cs->cs_ops = &zsops_null; in zs_attach()
224 cs->cs_brg_clk = PCLK / 16; in zs_attach()
227 cs->cs_reg_csr = &zc->zc_csr; in zs_attach()
228 cs->cs_reg_data = &zc->zc_data; in zs_attach()
230 memcpy(cs->cs_creg, zs_init_reg, 16); in zs_attach()
231 memcpy(cs->cs_preg, zs_init_reg, 16); in zs_attach()
236 cs->cs_defspeed = zs_get_speed(cs); in zs_attach()
238 cs->cs_defspeed = zs_defspeed[channel]; in zs_attach()
239 cs->cs_defcflag = zs_def_cflag; in zs_attach()
242 cs->cs_rr0_dcd = ZSRR0_DCD; in zs_attach()
243 cs->cs_rr0_cts = 0; in zs_attach()
244 cs->cs_wr5_dtr = ZSWR5_DTR | ZSWR5_RTS; in zs_attach()
245 cs->cs_wr5_rts = 0; in zs_attach()
253 zs_write_reg(cs, 9, 0); in zs_attach()
266 zs_write_reg(cs, 9, reset); in zs_attach()
280 cs = zsc->zsc_cs[0]; in zs_attach()
283 zs_write_reg(cs, 2, zs_init_reg[2]); in zs_attach()
285 zs_write_reg(cs, 9, zs_init_reg[9]); in zs_attach()
341 zs_get_speed(struct zs_chanstate *cs) in zs_get_speed() argument
345 tconst = zs_read_reg(cs, 12); in zs_get_speed()
346 tconst |= zs_read_reg(cs, 13) << 8; in zs_get_speed()
347 return (TCONST_TO_BPS(cs->cs_brg_clk, tconst)); in zs_get_speed()
354 zs_set_speed(struct zs_chanstate *cs, int bps) in zs_set_speed() argument
362 if (cs->cs_brg_clk == 0) in zs_set_speed()
366 tconst = BPS_TO_TCONST(cs->cs_brg_clk, bps); in zs_set_speed()
371 real_bps = TCONST_TO_BPS(cs->cs_brg_clk, tconst); in zs_set_speed()
377 cs->cs_preg[12] = tconst; in zs_set_speed()
378 cs->cs_preg[13] = tconst >> 8; in zs_set_speed()
385 zs_set_modes(struct zs_chanstate *cs, int cflag) in zs_set_modes() argument
397 cs->cs_rr0_pps = 0; in zs_set_modes()
399 cs->cs_rr0_dcd = 0; in zs_set_modes()
401 cs->cs_rr0_pps = ZSRR0_DCD; in zs_set_modes()
403 cs->cs_rr0_dcd = ZSRR0_DCD; in zs_set_modes()
405 cs->cs_wr5_dtr = ZSWR5_DTR; in zs_set_modes()
406 cs->cs_wr5_rts = ZSWR5_RTS; in zs_set_modes()
407 cs->cs_rr0_cts = ZSRR0_CTS; in zs_set_modes()
409 cs->cs_wr5_dtr = 0; in zs_set_modes()
410 cs->cs_wr5_rts = ZSWR5_DTR; in zs_set_modes()
411 cs->cs_rr0_cts = ZSRR0_CTS; in zs_set_modes()
413 cs->cs_wr5_dtr = 0; in zs_set_modes()
414 cs->cs_wr5_rts = ZSWR5_DTR; in zs_set_modes()
415 cs->cs_rr0_cts = ZSRR0_DCD; in zs_set_modes()
417 cs->cs_wr5_dtr = ZSWR5_DTR | ZSWR5_RTS; in zs_set_modes()
418 cs->cs_wr5_rts = 0; in zs_set_modes()
419 cs->cs_rr0_cts = 0; in zs_set_modes()
432 zs_read_reg(struct zs_chanstate *cs, uint8_t reg) in zs_read_reg() argument
436 *cs->cs_reg_csr = reg; in zs_read_reg()
438 val = *cs->cs_reg_csr; in zs_read_reg()
444 zs_write_reg(struct zs_chanstate *cs, uint8_t reg, uint8_t val) in zs_write_reg() argument
446 *cs->cs_reg_csr = reg; in zs_write_reg()
448 *cs->cs_reg_csr = val; in zs_write_reg()
453 zs_read_csr(struct zs_chanstate *cs) in zs_read_csr() argument
457 val = *cs->cs_reg_csr; in zs_read_csr()
463 zs_write_csr(struct zs_chanstate *cs, uint8_t val) in zs_write_csr() argument
465 *cs->cs_reg_csr = val; in zs_write_csr()
470 zs_read_data(struct zs_chanstate *cs) in zs_read_data() argument
474 val = *cs->cs_reg_data; in zs_read_data()
480 zs_write_data(struct zs_chanstate *cs, uint8_t val) in zs_write_data() argument
482 *cs->cs_reg_data = val; in zs_write_data()
501 zs_abort(struct zs_chanstate *cs) in zs_abort() argument
515 zskgdb(cs); in zs_abort()
609 struct zs_chanstate *cs; in zscninit() local
617 cs = &xcs; in zscninit()
619 cs->cs_reg_csr = &zc->zc_csr; in zscninit()
620 cs->cs_reg_data = &zc->zc_data; in zscninit()
621 cs->cs_channel = zs_consunit; in zscninit()
622 cs->cs_brg_clk = PCLK / 16; in zscninit()
624 memcpy(cs->cs_preg, zs_init_reg, 16); in zscninit()
625 cs->cs_preg[5] |= ZSWR5_DTR | ZSWR5_RTS; in zscninit()
626 cs->cs_preg[15] = ZSWR15_BREAK_IE; in zscninit()
628 tconst = BPS_TO_TCONST(cs->cs_brg_clk, zs_defspeed[zs_consunit]); in zscninit()
629 cs->cs_preg[12] = tconst; in zscninit()
630 cs->cs_preg[13] = tconst >> 8; in zscninit()
637 cs->cs_preg[9] &= ~ZSWR9_MASTER_IE; in zscninit()
641 zs_loadchannelregs(cs); in zscninit()