I would probable do it for free for a certain amount of time after the completed product, but after that I would charge for changes
That is what most people do. They decide this early initially before starting the work. Certain amount of revisions in the provided designs are acceptable to designers but then if it goes beyond certain number of revisions then might be its not the designers fault, and might be the requirements was never told clearly to the designers.
Well it also depends upon with whom you are working. If the client is of very potential and trusted then one can do it for free until it becomes perfect for the client.