Lines Matching refs:cl
38 static inline int hsi_dummy_cl(struct hsi_client *cl __maybe_unused) in hsi_dummy_cl()
197 struct hsi_port *port = hsi_get_port(msg->cl); in ssi_claim_lch()
214 struct hsi_port *port = hsi_get_port(msg->cl); in ssi_start_dma()
285 struct hsi_port *port = hsi_get_port(msg->cl); in ssi_start_pio()
330 struct hsi_port *port = hsi_get_port(msg->cl); in ssi_async_break()
368 struct hsi_port *port = hsi_get_port(msg->cl); in ssi_async()
419 static void ssi_flush_queue(struct list_head *queue, struct hsi_client *cl) in ssi_flush_queue() argument
426 if ((cl) && (cl != msg->cl)) in ssi_flush_queue()
439 static int ssi_setup(struct hsi_client *cl) in ssi_setup() argument
441 struct hsi_port *port = to_hsi_port(cl->device.parent); in ssi_setup()
453 if (cl->tx_cfg.speed) in ssi_setup()
454 omap_ssi->max_speed = cl->tx_cfg.speed; in ssi_setup()
457 dev_err(&cl->device, "Invalid TX speed %d Mb/s (div %d)\n", in ssi_setup()
458 cl->tx_cfg.speed, div); in ssi_setup()
470 writel_relaxed(cl->tx_cfg.num_hw_channels, sst + SSI_SST_CHANNELS_REG); in ssi_setup()
471 writel_relaxed(cl->tx_cfg.arb_mode, sst + SSI_SST_ARBMODE_REG); in ssi_setup()
472 writel_relaxed(cl->tx_cfg.mode, sst + SSI_SST_MODE_REG); in ssi_setup()
475 writel_relaxed(cl->rx_cfg.num_hw_channels, ssr + SSI_SSR_CHANNELS_REG); in ssi_setup()
479 (cl->rx_cfg.mode != SSI_MODE_FRAME)) in ssi_setup()
480 ssi_flush_queue(&omap_port->brkqueue, cl); in ssi_setup()
481 writel_relaxed(cl->rx_cfg.mode, ssr + SSI_SSR_MODE_REG); in ssi_setup()
482 omap_port->channels = max(cl->rx_cfg.num_hw_channels, in ssi_setup()
483 cl->tx_cfg.num_hw_channels); in ssi_setup()
488 omap_port->sst.channels = cl->tx_cfg.num_hw_channels; in ssi_setup()
489 omap_port->sst.arb_mode = cl->tx_cfg.arb_mode; in ssi_setup()
490 omap_port->sst.mode = cl->tx_cfg.mode; in ssi_setup()
494 omap_port->ssr.channels = cl->rx_cfg.num_hw_channels; in ssi_setup()
495 omap_port->ssr.mode = cl->rx_cfg.mode; in ssi_setup()
503 static int ssi_flush(struct hsi_client *cl) in ssi_flush() argument
505 struct hsi_port *port = hsi_get_port(cl); in ssi_flush()
520 if (!msg || (port != hsi_get_port(msg->cl))) in ssi_flush()
559 static int ssi_start_tx(struct hsi_client *cl) in ssi_start_tx() argument
561 struct hsi_port *port = hsi_get_port(cl); in ssi_start_tx()
580 static int ssi_stop_tx(struct hsi_client *cl) in ssi_stop_tx() argument
582 struct hsi_port *port = hsi_get_port(cl); in ssi_stop_tx()
624 static void ssi_cleanup_queues(struct hsi_client *cl) in ssi_cleanup_queues() argument
626 struct hsi_port *port = hsi_get_port(cl); in ssi_cleanup_queues()
637 ssi_flush_queue(&omap_port->brkqueue, cl); in ssi_cleanup_queues()
646 if ((msg->cl == cl) && (msg->status == HSI_STATUS_PROCEEDING)) { in ssi_cleanup_queues()
652 ssi_flush_queue(&omap_port->txqueue[i], cl); in ssi_cleanup_queues()
659 if ((msg->cl == cl) && (msg->status == HSI_STATUS_PROCEEDING)) { in ssi_cleanup_queues()
663 ssi_flush_queue(&omap_port->rxqueue[i], cl); in ssi_cleanup_queues()
684 static void ssi_cleanup_gdd(struct hsi_controller *ssi, struct hsi_client *cl) in ssi_cleanup_gdd() argument
687 struct hsi_port *port = hsi_get_port(cl); in ssi_cleanup_gdd()
696 if ((!msg) || (msg->cl != cl)) in ssi_cleanup_gdd()
724 static int ssi_release(struct hsi_client *cl) in ssi_release() argument
726 struct hsi_port *port = hsi_get_port(cl); in ssi_release()
733 ssi_cleanup_gdd(ssi, cl); in ssi_release()
735 ssi_cleanup_queues(cl); in ssi_release()