Is it grammatically correct to use "how long" with simple present perfect?
How long have you driven?
This is correct. The present perfect is used to talk about the current state resulting from past activities. You could also say "How long have you been driving", with very little difference in meaning. In this case the "How long have you driven" form could be understood as "How long have you been able to drive?", so the answer could be "I've driven since I was 17."