TL;DR* Here's what the license entails:
1. Anyone can copy, modify and distribute this software.
2. You have to include the license and copyright notice with each and every distribution.
3. You can use this software privately.
4. You can use this software for commercial purposes.
5. If you dare build your business solely from this code, you risk open-sourcing the whole code base.
6. If you modify it, you have to indicate changes made to the code.
7. Any modifications of this code base MUST be distributed with the same license, GPLv3.
8. This software is provided without warranty.
9. The software author or license can not be held liable for any damages inflicted by the software.
More information on about the LICENSE can be found here
Some clarification of things.
Roger's question. Is he distributing binaries? If no, the GPL doesn't matter. If yes (he is distributing copies of the device to others), then he must distribute the source for what runs on processor a, and is not required to distribute the source of the software that runs on processor b, assuming they are different pieces of software. software b does not run any of the code inside software a, so software b does not link against software a. However, to not run afoul of the anti-tivoization clause, processor B must not perform any integrity checks on software A. Any modification of software A running on processor A has to still be able to work with processor B after it's been modified, or it doesn't fulfill the obligation to provide source. Sufficiently documenting what processor B expects is good enough to avoid needing to open the software for processor B.