1
mirror of https://github.com/DarkFlippers/unleashed-firmware.git synced 2025-12-12 20:49:49 +04:00

Scripts: add serial number support to cube programmer api, update usage. (#839)

This commit is contained in:
あく
2021-11-23 19:13:34 +03:00
committed by GitHub
parent 68274b6c27
commit 01f08f99b1
4 changed files with 92 additions and 57 deletions

View File

@@ -16,19 +16,27 @@ class Main(App):
self.parser_check = self.subparsers.add_parser(
"check", help="Check Option Bytes"
)
self.parser_check.add_argument(
"--port", type=str, help="Port to connect: swd or usb1", default="swd"
)
self._addArgsSWD(self.parser_check)
self.parser_check.set_defaults(func=self.check)
# Set command
self.parser_set = self.subparsers.add_parser("set", help="Set Option Bytes")
self.parser_set.add_argument(
"--port", type=str, help="Port to connect: swd or usb1", default="swd"
)
self._addArgsSWD(self.parser_set)
self.parser_set.set_defaults(func=self.set)
# OB
self.ob = {}
def _addArgsSWD(self, parser):
parser.add_argument(
"--port", type=str, help="Port to connect: swd or usb1", default="swd"
)
parser.add_argument("--serial", type=str, help="ST-Link Serial Number")
def _getCubeParams(self):
return {
"port": self.args.port,
"serial": self.args.serial,
}
def before(self):
self.logger.info(f"Loading Option Bytes data")
file_path = os.path.join(os.path.dirname(sys.argv[0]), "ob.data")
@@ -39,7 +47,7 @@ class Main(App):
def check(self):
self.logger.info(f"Checking Option Bytes")
cp = CubeProgrammer(self.args.port)
cp = CubeProgrammer(self._getCubeParams())
if cp.checkOptionBytes(self.ob):
self.logger.info(f"OB Check OK")
return 0
@@ -49,7 +57,7 @@ class Main(App):
def set(self):
self.logger.info(f"Setting Option Bytes")
cp = CubeProgrammer(self.args.port)
cp = CubeProgrammer(self._getCubeParams())
if cp.setOptionBytes(self.ob):
self.logger.info(f"OB Set OK")
return 0