Lines Matching refs:sma

376 	struct ptp_ocp_sma_connector sma[OCP_SMA_NUM];
2433 if (bp->sma[sma_nr - 1].fixed_fcn)
2436 if (bp->sma[sma_nr - 1].mode == SMA_MODE_IN)
2513 bp->sma[i].default_fcn = i & 1;
2514 bp->sma[i].dpll_prop = prop;
2515 bp->sma[i].dpll_prop.board_label =
2518 bp->sma[0].mode = SMA_MODE_IN;
2519 bp->sma[1].mode = SMA_MODE_IN;
2520 bp->sma[2].mode = SMA_MODE_OUT;
2521 bp->sma[3].mode = SMA_MODE_OUT;
2525 bp->sma[i].fixed_fcn = true;
2526 bp->sma[i].fixed_dir = true;
2527 bp->sma[1].dpll_prop.capabilities &=
2539 bp->sma[i].fixed_dir = true;
2542 bp->sma[0].mode = reg & BIT(15) ? SMA_MODE_IN : SMA_MODE_OUT;
2543 bp->sma[1].mode = reg & BIT(31) ? SMA_MODE_IN : SMA_MODE_OUT;
2546 bp->sma[2].mode = reg & BIT(15) ? SMA_MODE_OUT : SMA_MODE_IN;
2547 bp->sma[3].mode = reg & BIT(31) ? SMA_MODE_OUT : SMA_MODE_IN;
2578 sprintf(config[i].name, "sma%d", i + 1);
2696 bp->sma[0].mode = SMA_MODE_IN;
2697 bp->sma[1].mode = SMA_MODE_IN;
2698 bp->sma[2].mode = SMA_MODE_OUT;
2699 bp->sma[3].mode = SMA_MODE_OUT;
2701 bp->sma[0].default_fcn = 0x08; /* IN: 10Mhz */
2702 bp->sma[1].default_fcn = 0x01; /* IN: PPS1 */
2703 bp->sma[2].default_fcn = 0x10; /* OUT: 10Mhz */
2704 bp->sma[3].default_fcn = 0x02; /* OUT: PHC */
2708 bp->sma[i].dpll_prop = prop;
2709 bp->sma[i].dpll_prop.board_label =
2712 bp->sma[i].fixed_fcn = true;
2713 bp->sma[i].fixed_dir = true;
2720 bp->sma[i].fixed_fcn = true;
2721 bp->sma[i].fixed_dir = true;
2725 bp->sma[i].mode = SMA_MODE_IN;
2726 bp->sma[i].dpll_prop.capabilities =
2730 bp->sma[i].mode = SMA_MODE_OUT;
2731 bp->sma[i].dpll_prop.capabilities =
2741 if (bp->sma[sma_nr - 1].fixed_fcn)
2742 return bp->sma[sma_nr - 1].default_fcn;
2931 struct ptp_ocp_sma_connector *sma = &bp->sma[sma_nr - 1];
2938 if (sma->mode == SMA_MODE_IN) {
2939 if (sma->disabled)
2982 struct ptp_ocp_sma_connector *sma = &bp->sma[sma_nr - 1];
2984 if (sma->fixed_dir && (mode != sma->mode || val & SMA_DISABLE))
2987 if (sma->fixed_fcn) {
2988 if (val != sma->default_fcn)
2993 sma->disabled = !!(val & SMA_DISABLE);
2995 if (mode != sma->mode) {
3000 sma->mode = mode;
3003 if (!sma->fixed_dir)
3006 if (sma->disabled)
3020 struct ptp_ocp_sma_connector *sma = &bp->sma[sma_nr - 1];
3024 mode = sma->mode;
3858 if (bp->sma[i].mode != SMA_MODE_IN)
3861 sprintf(buf, "sma%d", i + 1);
3878 if (bp->sma[i].mode != SMA_MODE_OUT)
3881 ans += sprintf(ans, "sma%d ", i + 1);
4519 *state = (&bp->sma[idx] == pin_priv) ? DPLL_PIN_STATE_CONNECTED :
4541 struct ptp_ocp_sma_connector *sma = pin_priv;
4543 *direction = sma->mode == SMA_MODE_IN ?
4556 struct ptp_ocp_sma_connector *sma = pin_priv;
4559 int sma_nr = (sma - bp->sma);
4561 if (sma->fixed_dir)
4574 struct ptp_ocp_sma_connector *sma = pin_priv;
4577 int sma_nr = (sma - bp->sma);
4580 if (sma->fixed_fcn)
4583 tbl = bp->sma_op->tbl[sma->mode];
4586 return ptp_ocp_sma_store_val(bp, i, sma->mode, sma_nr + 1);
4596 struct ptp_ocp_sma_connector *sma = pin_priv;
4599 int sma_nr = (sma - bp->sma);
4604 tbl = bp->sma_op->tbl[sma->mode];
4716 bp->sma[i].dpll_pin = dpll_pin_get(clkid, i, THIS_MODULE, &bp->sma[i].dpll_prop);
4717 if (IS_ERR(bp->sma[i].dpll_pin)) {
4718 err = PTR_ERR(bp->sma[i].dpll_pin);
4722 err = dpll_pin_register(bp->dpll, bp->sma[i].dpll_pin, &dpll_pins_ops,
4723 &bp->sma[i]);
4725 dpll_pin_put(bp->sma[i].dpll_pin);
4735 dpll_pin_unregister(bp->dpll, bp->sma[i].dpll_pin, &dpll_pins_ops, &bp->sma[i]);
4736 dpll_pin_put(bp->sma[i].dpll_pin);
4757 if (bp->sma[i].dpll_pin) {
4758 dpll_pin_unregister(bp->dpll, bp->sma[i].dpll_pin, &dpll_pins_ops, &bp->sma[i]);
4759 dpll_pin_put(bp->sma[i].dpll_pin);