Why not open source the firmware?

Users could implement pull requests for additional functionality or fix bugs that they find annoying.

Also judging how a release breaks previously working features (indicating limited testing/poor code architecture) the code quality if likely to be higher if it is open sourced.

So what's stopping Garmin from open sourcing the firmware?