British Prime Minister Gordon Brown has made an unannounced visit to Afghanistan .