The new FCC rules are meant to limit interference and target third-party firmware because it allows users to modify their radio frequency parameters. While the FCC requirements don’t actually block third-party firmware, it’s much easier for a router manufacturer to comply with the ruling by blocking out custom firmware like OpenWRT or Tomato altogether than it is to test that firmware for compliance.

http://lifehacker.com/tp-link-blocks-open-source-router-firmware-in-complianc-1764335555

This is one of the major learning points for OSS – compliance is incredibly important for widespread adoption, even if it is boring to implement, like documentation