Lines Matching refs:aib
510 struct etr_aib aib; in etr_init() local
516 if (etr_steai(&aib, ETR_STEAI_STEPPING_PORT) == 0) in etr_init()
635 static int etr_port_valid(struct etr_aib *aib, int port) in etr_port_valid() argument
640 if (aib->tsp == 0) in etr_port_valid()
643 psc = port ? aib->esw.psc1 : aib->esw.psc0; in etr_port_valid()
647 return !aib->esw.y && aib->slsw.v1 && in etr_port_valid()
648 aib->slsw.v2 && aib->slsw.v3; in etr_port_valid()
666 static void etr_steai_cv(struct etr_aib *aib, unsigned int func) in etr_steai_cv() argument
668 BUG_ON(etr_steai(aib, func) != 0); in etr_steai_cv()
670 if (aib->esw.psc0 == 1) in etr_steai_cv()
671 aib->esw.psc0 = 2; in etr_steai_cv()
672 else if (aib->esw.psc0 == 0 && aib->esw.p == 0) in etr_steai_cv()
673 aib->esw.psc0 = 1; in etr_steai_cv()
674 if (aib->esw.psc1 == 1) in etr_steai_cv()
675 aib->esw.psc1 = 2; in etr_steai_cv()
676 else if (aib->esw.psc1 == 0 && aib->esw.p == 1) in etr_steai_cv()
677 aib->esw.psc1 = 1; in etr_steai_cv()
761 struct etr_aib *sync_port, *aib; in etr_sync_clock() local
778 aib = etr_sync->etr_aib; in etr_sync_clock()
785 clock = ((unsigned long long) (aib->edf2.etv + 1)) << 32; in etr_sync_clock()
791 etr_stetr(aib); in etr_sync_clock()
794 (aib->edf2.etv - sync_port->edf2.etv) << 32; in etr_sync_clock()
802 if (!etr_aib_follows(sync_port, aib, port)) { in etr_sync_clock()
823 static int etr_sync_clock_stop(struct etr_aib *aib, int port) in etr_sync_clock_stop() argument
832 follows = etr_aib_follows(sync_port, aib, port); in etr_sync_clock_stop()
833 memcpy(sync_port, aib, sizeof(*aib)); in etr_sync_clock_stop()
837 etr_sync.etr_aib = aib; in etr_sync_clock_stop()
916 static struct etr_eacr etr_handle_update(struct etr_aib *aib, in etr_handle_update() argument
924 if (aib->esw.q == 0) { in etr_handle_update()
927 etr_port0 = *aib; in etr_handle_update()
934 etr_port1 = *aib; in etr_handle_update()
1007 struct etr_aib aib; in etr_work_fn() local
1031 BUG_ON(etr_stetr(&aib) != 0); in etr_work_fn()
1032 etr_port0.esw = etr_port1.esw = aib.esw; /* Copy status word. */ in etr_work_fn()
1040 eacr = etr_handle_update(&aib, eacr); in etr_work_fn()
1055 if (eacr.p0 && aib.esw.psc0 == etr_lpsc_pps_mode) { in etr_work_fn()
1060 if (!eacr.es || !eacr.p1 || aib.esw.psc1 != etr_lpsc_pps_mode) in etr_work_fn()
1067 } else if (eacr.p1 && aib.esw.psc1 == etr_lpsc_pps_mode) { in etr_work_fn()
1075 } else if (eacr.p0 && aib.esw.psc0 == etr_lpsc_operational_step) { in etr_work_fn()
1081 aib.esw.psc1 != etr_lpsc_operational_alt) in etr_work_fn()
1088 } else if (eacr.p1 && aib.esw.psc1 == etr_lpsc_operational_step) { in etr_work_fn()
1128 etr_sync_clock_stop(&aib, sync_port) != 0) { in etr_work_fn()
1272 struct etr_aib *aib = etr_aib_from_dev(dev); in etr_untuned_show() local
1274 if (!aib || !aib->slsw.v1) in etr_untuned_show()
1276 return sprintf(buf, "%i\n", aib->edf1.u); in etr_untuned_show()
1284 struct etr_aib *aib = etr_aib_from_dev(dev); in etr_network_id_show() local
1286 if (!aib || !aib->slsw.v1) in etr_network_id_show()
1288 return sprintf(buf, "%i\n", aib->edf1.net_id); in etr_network_id_show()
1296 struct etr_aib *aib = etr_aib_from_dev(dev); in etr_id_show() local
1298 if (!aib || !aib->slsw.v1) in etr_id_show()
1300 return sprintf(buf, "%i\n", aib->edf1.etr_id); in etr_id_show()
1308 struct etr_aib *aib = etr_aib_from_dev(dev); in etr_port_number_show() local
1310 if (!aib || !aib->slsw.v1) in etr_port_number_show()
1312 return sprintf(buf, "%i\n", aib->edf1.etr_pn); in etr_port_number_show()
1320 struct etr_aib *aib = etr_aib_from_dev(dev); in etr_coupled_show() local
1322 if (!aib || !aib->slsw.v3) in etr_coupled_show()
1324 return sprintf(buf, "%i\n", aib->edf3.c); in etr_coupled_show()
1332 struct etr_aib *aib = etr_aib_from_dev(dev); in etr_local_time_show() local
1334 if (!aib || !aib->slsw.v3) in etr_local_time_show()
1336 return sprintf(buf, "%i\n", aib->edf3.blto); in etr_local_time_show()
1344 struct etr_aib *aib = etr_aib_from_dev(dev); in etr_utc_offset_show() local
1346 if (!aib || !aib->slsw.v3) in etr_utc_offset_show()
1348 return sprintf(buf, "%i\n", aib->edf3.buo); in etr_utc_offset_show()