If a player "impedes the progress of an opponent" then indeed it would be an indirect free kick.
However if the referee sees it as "charging an opponent" in a manner considered to be careless, reckless or using excessive force then the correct award is a direct free kick.
I would say the referee had every right to see it as the latter.