Lines Matching full:synchronous
43 * SAI supports synchronous mode using bit/frame clocks of either Transmitter's
55 return !sai->synchronous[dir] && sai->synchronous[adir]; in fsl_sai_dir_is_synced()
410 * 4) For Tx and Rx are both Synchronous with another SAI, we just in fsl_sai_set_bclk()
419 } else if (!sai->synchronous[dir]) { in fsl_sai_set_bclk()
597 sai->synchronous[TX] ? FSL_SAI_CR2_SYNC : 0); in fsl_sai_trigger()
599 sai->synchronous[RX] ? FSL_SAI_CR2_SYNC : 0); in fsl_sai_trigger()
615 * Enable the opposite direction for synchronous mode in fsl_sai_trigger()
644 * If opposite stream provides clocks for synchronous mode and in fsl_sai_trigger()
652 * 1. current stream doesn't provide clocks for synchronous mode in fsl_sai_trigger()
653 * 2. current stream provides clocks for synchronous mode but no in fsl_sai_trigger()
1069 sai->synchronous[RX] = true; in fsl_sai_probe()
1070 sai->synchronous[TX] = false; in fsl_sai_probe()
1075 if (of_find_property(np, "fsl,sai-synchronous-rx", NULL) && in fsl_sai_probe()
1077 /* error out if both synchronous and asynchronous are present */ in fsl_sai_probe()
1078 dev_err(&pdev->dev, "invalid binding for synchronous mode\n"); in fsl_sai_probe()
1082 if (of_find_property(np, "fsl,sai-synchronous-rx", NULL)) { in fsl_sai_probe()
1084 sai->synchronous[RX] = false; in fsl_sai_probe()
1085 sai->synchronous[TX] = true; in fsl_sai_probe()
1088 sai->synchronous[RX] = false; in fsl_sai_probe()
1089 sai->synchronous[TX] = false; in fsl_sai_probe()