When should we require that firmware be free?