Atmel Evaluation Kit for AT32uC3A0512, 32-Bit AVR Microcontroller Atmel ATEVK1105 ATEVK1105 Data Sheet

Product codes
ATEVK1105
Page of 826
806
AT32UC3A
RETS behaves incorrectly when MPU is enabled and MPU is configured so that 
system stack is not readable in unprivileged mode.
Fix/Woraround
Workaround 1: Make system stack readable in unprivileged mode, 
or 
Workaround 2: Return from supervisor mode using rete instead of rets. This 
requires :
1. Changing the mode bits from 001b to 110b before issuing the instruction. 
Updating the mode bits to the desired value must be done using a single mtsr 
instruction so it is done atomically. Even if this step is described in general 
as not safe in the UC technical reference guide, it is safe in this very 
specific case.
2. Execute the RETE instruction.
1.
Reading  from  on-chip  flash  may  fail  after  a  flash  fuse  write  operation  (FLASHC  LP, 
UP, WGPB, EGPB, SSB, PGPFB, EAGPF commands).
After a flash fuse write operation (FLASHC  LP, UP, WGPB, EGPB, SSB, PGPFB, EAGPF 
commands), the following flash read access may return corrupted data. This erratum does 
not affect write operations to regular flash memory.
Fix/Workaround 
The flash fuse write operation (FLASHC LP, UP, WGPB, EGPB, SSB, PGPFB, EAGPF 
commands) must be issued from internal RAM. After the write operation, perform a dummy 
flash page write operation (FLASHC WP). Content and location of this page is not important 
and filling the write buffer with all one (FFh) will leave the current flash content unchanged. It 
is then safe to read and fetch code from the flash. 
41.4.12    FLASHC
32058K
AVR32-01/12