1 #!/usr/bin/env python
\r
2 # GoodFET Client Library
\r
7 from GoodFET import GoodFET;
\r
9 class GoodFETSLC2(GoodFET):
\r
10 """GoodFET variant for the Silicon lab C2 protocol"""
\r
14 """Setup the SLC2 protocol"""
\r
15 self.writecmd(0x06, 0x10, 0);
\r
18 self.writecmd(0x06, 0x84, 0);
\r
20 def peekblock(self, addr, len):
\r
21 """Grab block from FLASH at address addr"""
\r
22 dat= [addr&0xFF, (addr&0xFF00)>>8];
\r
23 self.writecmd(0x06, 0x02, 2, dat);
\r
26 def pokeblock(self, addr, len, data):
\r
28 self.writecmd(0x06, 0x03, len, d);
\r
31 return self.writecmd(0x06, 0x80, 0, []);
\r
34 return self.writecmd(0x06, 0x81, 0, []);
\r
36 def page_erase(self, addr):
\r
37 self.writecmd(0x06, 0x82, 1, addr);
\r
39 def device_erase(self):
\r
40 self.writecmd(0x06, 0x83, 0, []);
\r