To give something that was asked for, by the authority to give it. Its root is not gift but trust - to grant is to find the asking credible.
Vulgar Latin creantare (to assure, guarantee), from Latin credere (to believe, trust), via Old French granter; the root is trust rather than gift, to grant is to find the asking credible.
To give something that was asked for, by the standing to give it: trust in the asking, before generosity in the giving.