Example #1
0
    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)
Example #2
0
                        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()