psc_ops
static const struct psc_ops *psc_ops;
return psc_ops->tx_empty(port) ? TIOCSER_TEMT : 0;
psc_ops->set_rts(port, mctrl & TIOCM_RTS);
u8 status = psc_ops->get_ipcr(port);
psc_ops->stop_tx(port);
psc_ops->start_tx(port);
psc_ops->stop_rx(port);
psc_ops->enable_ms(port);
psc_ops->command(port, MPC52xx_PSC_START_BRK);
psc_ops->command(port, MPC52xx_PSC_STOP_BRK);
if (psc_ops->clock) {
ret = psc_ops->clock(port, 1);
psc_ops->command(port, MPC52xx_PSC_RST_RX);
psc_ops->command(port, MPC52xx_PSC_RST_TX);
psc_ops->set_sicr(port, 0); /* UART mode DCD ignored */
psc_ops->fifo_init(port);
psc_ops->command(port, MPC52xx_PSC_TX_ENABLE);
psc_ops->command(port, MPC52xx_PSC_RX_ENABLE);
psc_ops->command(port, MPC52xx_PSC_RST_RX);
psc_ops->command(port, MPC52xx_PSC_RST_TX);
psc_ops->set_imr(port, port->read_status_mask);
if (psc_ops->clock)
psc_ops->clock(port, 0);
psc_ops->cw_disable_ints(port);
psc_ops->command(port, MPC52xx_PSC_RST_RX);
psc_ops->command(port, MPC52xx_PSC_RST_TX);
psc_ops->set_mode(port, mr1, mr2);
baud = psc_ops->set_baudrate(port, new, old);
psc_ops->command(port, MPC52xx_PSC_TX_ENABLE);
psc_ops->command(port, MPC52xx_PSC_RX_ENABLE);
if (psc_ops->clock_relse)
psc_ops->clock_relse(port);
if (psc_ops->clock_alloc) {
err = psc_ops->clock_alloc(port);
while (psc_ops->raw_rx_rdy(port)) {
ch = psc_ops->read_char(port);
status = psc_ops->get_status(port);
psc_ops->command(port, MPC52xx_PSC_RST_ERR_STAT);
return psc_ops->raw_rx_rdy(port);
psc_ops->raw_tx_rdy(port),
psc_ops->write_char(port, ch));
psc_ops->rx_clr_irq(port);
if (psc_ops->rx_rdy(port))
psc_ops->tx_clr_irq(port);
if (psc_ops->tx_rdy(port))
status = psc_ops->get_ipcr(port);
ret = psc_ops->handle_irq(port);
mr1 = psc_ops->get_mr1(port);
psc_ops->cw_disable_ints(port);
psc_ops->write_char(port, '\r');
psc_ops->write_char(port, *s);
psc_ops->cw_restore_ints(port);
psc_ops->get_irq(port, op->dev.of_node);
psc_ops = match->data;
if (psc_ops && psc_ops->fifoc_init) {
ret = psc_ops->fifoc_init();
if (psc_ops && psc_ops->fifoc_uninit)
psc_ops->fifoc_uninit();
if (psc_ops->fifoc_uninit)
psc_ops->fifoc_uninit();
static const struct psc_ops mpc52xx_psc_ops = {
static const struct psc_ops mpc5200b_psc_ops = {
static const struct psc_ops mpc5125_psc_ops = {
static const struct psc_ops mpc512x_psc_ops = {