OpenOCD scripts (#2101)
* Scripts: option bytes check * Scripts: option bytes set * Scripts: openocd config * Scripts: increased readability, process IPCCBR option byte * Scripts: split dap_ob.py * Updater: process IPCCBR option byte * Scripts: move chip-related functions to chip definition * Scripts: freeze CPU registers * Scripts: flash programming routine * ob.py * otp.py * otp: handle errors correctly * downgrade to python 3.9 * correct type hinting * Scripts: fix path to ob.data Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
31
scripts/flipper/utils/programmer.py
Normal file
31
scripts/flipper/utils/programmer.py
Normal file
@@ -0,0 +1,31 @@
|
||||
from abc import ABC, abstractmethod
|
||||
from enum import Enum
|
||||
|
||||
|
||||
class Programmer(ABC):
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
class RunMode(Enum):
|
||||
Run = "run"
|
||||
Stop = "stop"
|
||||
|
||||
@abstractmethod
|
||||
def reset(self, mode: RunMode = RunMode.Run) -> bool:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def flash(self, address: int, file_path: str, verify: bool = True) -> bool:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def option_bytes_validate(self, file_path: str) -> bool:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def option_bytes_set(self, file_path: str) -> bool:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def otp_write(self, address: int, file_path: str) -> bool:
|
||||
pass
|
Reference in New Issue
Block a user