Skip to content

Commit f77d65a

Browse files
committed
Tidy up fuses script
1 parent 11007cc commit f77d65a

File tree

1 file changed

+16
-6
lines changed

1 file changed

+16
-6
lines changed

builder/fuses.py

+16-6
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ def get_bodcfg_fuse(bod):
2020
return 0x34
2121
elif bod == "1.9v":
2222
return 0x14
23-
else: # bod disabled
23+
else: # bod disabled
2424
return 0x00
2525
elif core in ("MegaCoreX", "megatinycore"):
2626
if bod == "4.3v":
@@ -29,7 +29,7 @@ def get_bodcfg_fuse(bod):
2929
return 0x54
3030
elif bod == "1.8v":
3131
return 0x14
32-
else: # bod disabled
32+
else: # bod disabled
3333
return 0x00
3434

3535

@@ -69,6 +69,9 @@ def get_syscfg0_fuse(eesave, pin, uart):
6969
updipin_bits = 2
7070
return 0xC0 | updipin_bits << 2 | eesave_bit
7171

72+
sys.stderr.write("Error: Couldn't calculate SYSCFG0 fuse for %s\n" % target)
73+
env.Exit(1)
74+
7275

7376
# Handle AVR-DB's differently since these has MVIO pins
7477
def get_syscfg1_fuse(mvio):
@@ -80,6 +83,9 @@ def get_syscfg1_fuse(mvio):
8083
else:
8184
return 0x06
8285

86+
sys.stderr.write("Error: Couldn't calculate SYSCFG1 fuse for %s\n" % target)
87+
env.Exit(1)
88+
8389

8490
# Called CODESIZE on AVR-Dx
8591
def get_append_fuse():
@@ -90,18 +96,24 @@ def get_append_fuse():
9096
def get_bootend_fuse(uart):
9197
if uart == "no_bootloader":
9298
return 0x00
93-
else:
99+
else:
94100
if core in ("MegaCoreX", "megatinycore"):
95101
return 0x02
96102
elif core == "dxcore":
97103
return 0x01
98104

105+
sys.stderr.write("Error: Couldn't calculate bootend for %s\n" % target)
106+
env.Exit(1)
107+
99108

100109
def get_lockbit_fuse():
101110
if core in ("MegaCoreX", "megatinycore"):
102111
return 0xC5
103112
elif core == "dxcore":
104113
return 0x5CC5C55C
114+
else:
115+
sys.stderr.write("Error: Couldn't calculate lockbit for %s\n" % target)
116+
env.Exit(1)
105117

106118

107119
def print_fuses_info(fuse_values, fuse_names, lock_fuse):
@@ -118,7 +130,6 @@ def print_fuses_info(fuse_values, fuse_names, lock_fuse):
118130

119131

120132
def calculate_fuses(board_config, predefined_fuses):
121-
megaavr_fuses = []
122133
f_cpu = board_config.get("build.f_cpu", "16000000L").upper()
123134
oscillator = board_config.get("hardware.oscillator", "internal").lower()
124135
bod = board_config.get("hardware.bod", "2.6v").lower()
@@ -147,7 +158,6 @@ def calculate_fuses(board_config, predefined_fuses):
147158
"Reset pin mode" if core in ("MegaCoreX", "dxcore") else "UPDI pin mode", pin))
148159
print("-------------------------")
149160

150-
151161
return (
152162
predefined_fuses[0] or "0x%.2X" % get_wdtcfg_fuse(),
153163
predefined_fuses[1] or "0x%.2X" % get_bodcfg_fuse(bod),
@@ -184,7 +194,7 @@ def calculate_fuses(board_config, predefined_fuses):
184194
"tcd0cfg",
185195
"syscfg0",
186196
"syscfg1",
187-
"append" if core in ("MegaCoreX", "megatinycore") else "codesize",
197+
"append" if core in ("MegaCoreX", "megatinycore") else "codesize",
188198
"bootend" if core in ("MegaCoreX", "megatinycore") else "bootsize"
189199
)
190200

0 commit comments

Comments
 (0)