diff options
Diffstat (limited to 'mpm')
-rw-r--r-- | mpm/python/usrp_mpm/periph_manager/base.py | 12 | ||||
-rw-r--r-- | mpm/python/usrp_mpm/periph_manager/n3xx.py | 9 |
2 files changed, 21 insertions, 0 deletions
diff --git a/mpm/python/usrp_mpm/periph_manager/base.py b/mpm/python/usrp_mpm/periph_manager/base.py index c09cde611..324e47dc9 100644 --- a/mpm/python/usrp_mpm/periph_manager/base.py +++ b/mpm/python/usrp_mpm/periph_manager/base.py @@ -978,3 +978,15 @@ class PeriphManagerBase(object): assert src in self.get_gpio_srcs(bank), \ "Invalid GPIO source: {}".format(src) raise NotImplementedError("set_gpio_src() not available on this device!") + + ####################################################################### + # Sync API + ####################################################################### + def get_sync_source(self): + """ + Gets the current time and clock source + """ + return { + "time_source": self.get_time_source(), + "clock_source": self.get_clock_source(), + } diff --git a/mpm/python/usrp_mpm/periph_manager/n3xx.py b/mpm/python/usrp_mpm/periph_manager/n3xx.py index 9bb1f00df..1291b2977 100644 --- a/mpm/python/usrp_mpm/periph_manager/n3xx.py +++ b/mpm/python/usrp_mpm/periph_manager/n3xx.py @@ -595,6 +595,15 @@ class n3xx(ZynqComponents, PeriphManagerBase): } self.set_sync_source(source) + def get_sync_sources(self): + """ + Enumerate permissible time/clock source combinations for sync + """ + return [{ + "time_source": time_source, + "clock_source": clock_source + } for (clock_source, time_source) in self.valid_sync_sources] + def set_sync_source(self, args): """ Selects reference clock and PPS sources. Unconditionally re-applies the time |