SAME70 boot problem

Go To Last Post
4 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

We have a custom board utilizing an ATSAME70Q21AN rev B and whenever I "connect to target" with my Atmel-ICE using Atmel Studio I discover that it is running from the boot ROM at address 0x00800000. 

I have set the GPNVM bits to 0x42 so that it should be booting from Flash, however it always boots to the boot ROM.  Is there anything else besides setting GPNVM bit 1 to get it to boot to Flash?

 

Thanks

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0


 

These UART pins may affect the boot. Put pullups on these pin, it might fix the problem. I am not sure though, can you share schematics.

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Found the problem, turned out the erase pin wasn't being pulled down.  Shorted it to ground and it works.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Would you be able to explain the steps you used to set GPNVM bits 1/2?  I know the only way to clear them is using ERASE.

 

I've scoured the internet for hours and found nothing useful.   The data sheet's not terribly useful as the only guidance it provides is "All SAM E70/S70/V70/V71 devices feature nine general-purpose NVM (GPNVM) bits that can be cleared or set,
through the “Clear GPNVM Bit” and “Set GPNVM Bit” commands of the EEFC User Interface."

 

Searches for EEFC User Interface and those commands are equally useless.

 

I'm new to the ARM world and just working up from the bottom.  I have a SAM E70 X Plained evaluation kit and everything is working "just ducky" for lots of sample programs.  But now the ability to boot using my own code is rather fundamental for me - as I'm sure it is for others once they get past the basics.

 

I'm a bit surprised that the instructions for how to do this aren't immediately and widely available - almost feels like a conspiracy to keep this knowledge out of the hands of those who might hurt themselves :)

 

On another note - I've also searched far and wide for the SAM-BA bootloader code loaded in the ROM of my device (SAME70Q21) and again - no luck.  Even in "boot from ROM" mode, It'd be nice to understand what kind of setup is being done before the jump to my main() in flash - for those situations where it might be appropriate to use the ROM bootloader.   There doesn't even see to be any detailed documentation on what the SAM-BA bootloader does.   How can anyone even use that bootloader if if they don't know what it does - just cross their fingers and hope?  Hack until they get something to work?  Doesn't sound like real "engineering" to me :).

 

So can I assume this code is "close sourced?".

 

Thanks in advance for any help you can provide

 

Shawn

Shawn