Lines Matching defs:uccs

42 void ucc_slow_graceful_stop_tx(struct ucc_slow_private * uccs)
44 struct ucc_slow_info *us_info = uccs->us_info;
53 void ucc_slow_stop_tx(struct ucc_slow_private * uccs)
55 struct ucc_slow_info *us_info = uccs->us_info;
63 void ucc_slow_restart_tx(struct ucc_slow_private * uccs)
65 struct ucc_slow_info *us_info = uccs->us_info;
73 void ucc_slow_enable(struct ucc_slow_private * uccs, enum comm_dir mode)
78 us_regs = uccs->us_regs;
84 uccs->enabled_tx = 1;
88 uccs->enabled_rx = 1;
94 void ucc_slow_disable(struct ucc_slow_private * uccs, enum comm_dir mode)
99 us_regs = uccs->us_regs;
105 uccs->enabled_tx = 0;
109 uccs->enabled_rx = 0;
121 struct ucc_slow_private *uccs;
151 uccs = kzalloc(sizeof(struct ucc_slow_private), GFP_KERNEL);
152 if (!uccs) {
157 uccs->rx_base_offset = -1;
158 uccs->tx_base_offset = -1;
159 uccs->us_pram_offset = -1;
162 uccs->us_info = us_info;
164 uccs->us_regs = ioremap(us_info->regs, sizeof(struct ucc_slow));
165 if (uccs->us_regs == NULL) {
167 kfree(uccs);
171 us_regs = uccs->us_regs;
172 uccs->p_ucce = &us_regs->ucce;
173 uccs->p_uccm = &us_regs->uccm;
176 uccs->us_pram_offset =
178 if (uccs->us_pram_offset < 0) {
180 ucc_slow_free(uccs);
185 uccs->us_pram_offset);
187 uccs->us_pram = qe_muram_addr(uccs->us_pram_offset);
193 ucc_slow_free(uccs);
197 iowrite16be(us_info->max_rx_buf_length, &uccs->us_pram->mrblr);
199 INIT_LIST_HEAD(&uccs->confQ);
202 uccs->rx_base_offset =
205 if (uccs->rx_base_offset < 0) {
208 ucc_slow_free(uccs);
212 uccs->tx_base_offset =
215 if (uccs->tx_base_offset < 0) {
217 ucc_slow_free(uccs);
222 bd = uccs->confBd = uccs->tx_bd = qe_muram_addr(uccs->tx_base_offset);
235 bd = uccs->rx_bd = qe_muram_addr(uccs->rx_base_offset);
285 iowrite8(UCC_BMR_BO_BE, &uccs->us_pram->tbmr);
286 iowrite8(UCC_BMR_BO_BE, &uccs->us_pram->rbmr);
289 iowrite16be(uccs->rx_base_offset, &uccs->us_pram->rbase);
290 iowrite16be(uccs->tx_base_offset, &uccs->us_pram->tbase);
306 ucc_slow_free(uccs);
314 ucc_slow_free(uccs);
339 *uccs_ret = uccs;
344 void ucc_slow_free(struct ucc_slow_private * uccs)
346 if (!uccs)
349 qe_muram_free(uccs->rx_base_offset);
350 qe_muram_free(uccs->tx_base_offset);
351 qe_muram_free(uccs->us_pram_offset);
353 if (uccs->us_regs)
354 iounmap(uccs->us_regs);
356 kfree(uccs);