def scan_devices(self): devs = [chips.SinaraEEPROM(self, addr=0x57), chips.LM75(self), chips.PCF8574(self, addr=0x3e), chips.Si5324(self), chips.SFF8472(self)] devs = {dev.addr: dev for dev in devs} for port in sorted(self.ports): if port in self.skip: continue self.enable(port) logger.info("%s: ...", port) for addr in self.scan(): if addr in devs: devs[addr].report() else: logger.debug("ignoring addr %#02x", addr)
s.n31 = 65 # 125 MHz CKIN1 s.n32 = 52 # 100 MHz CKIN2 (not free run) s.n1_hs = 10 s.nc1_ls = 4 s.nc2_ls = 4 s.n2_hs = 10 s.n2_ls = 260 # 125MHz CKOUT s.bwsel = 10 si.setup(s) logger.warning("flags %s %s %s", si.has_xtal(), si.has_clkin2(), si.locked()) elif action == "sfp": bus.enable(args.eem) sfp0 = chips.SFF8472(bus) sfp0.report() # for i in 0x50, 0x51, 0x56: # sfp0.print_dump(bus.read_many(i, 0, 256)) # sfp0.watch(n=0) elif action == "ee": bus.enable(args.eem) ee = chips.EEPROM(bus) logger.warning(ee.fmt_eui48()) logger.warning(ee.dump()) io = chips.PCF8574(bus, addr=0x3e) # io.write(0xff) # logger.warning(hex(io.read())) else: raise ValueError("unknown action", action) finally: bus.enable()