ret
; re-enable the RWW section
ldi spmcrval, (1<<RWWSRE) | (1<<SPMEN)
call Do_spm
rjmp Return
Do_spm:
; check for previous SPM complete
Wait_spm:
in
temp1, SPMCSR
sbrc temp1, SPMEN
rjmp Wait_spm
; input: spmcrval determines SPM action
; disable interrupts if enabled, store status
in
temp2, SREG
cli
; check that no EEPROM write access is present
Wait_ee:
sbic EECR, EEPE
rjmp Wait_ee
; SPM timed sequence
out SPMCSR, spmcrval
spm
; restore SREG (to enable interrupts if originally enabled)
out SREG, temp2
ret
28.7.14 AT90USB64/128 Boot Loader Parameters
In Table 28-8 through Table 28-10, the parameters used in the description of the Self-Program-
ming are given.
Table 28-8. Boot Size Configuration (Word Addresses)(1)
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
512 words
1024 words
2048 words
4096 words
512 words
1024 words
2048 words
4096 words
4
8
0x0000 - 0x7DFF
0x0000 - 0x7BFF
0x7E00 - 0x7FFF
0x7C00 - 0x7FFF
0x7800 - 0x7FFF
0x7000 - 0x7FFF
0xFE00 - 0xFFFF
0xFC00 - 0xFFFF
0xF800 - 0xFFFF
0xF000 - 0xFFFF
0x7DFF
0x7BFF
0x77FF
0x6FFF
0xFDFF
0xFBFF
0xF7FF
0xEFFF
0x7E00
0x7C00
0x7800
0x7000
0xFE00
0xFC00
0xF800
0xF000
16 0x0000 - 0x77FF
32 0x0000 - 0x6FFF
4
8
0x0000 - 0xFDFF
0x0000 - 0xFBFF
16 0x0000 - 0xF7FF
32 0x0000 - 0xEFFF
Note:
1. The different BOOTSZ Fuse configurations are shown in Figure 28-2
366
AT90USB64/128
7593A–AVR–02/06