I am working with NHibernate, and a few code generation tools. MyGeneration is one and SmartCode is the other.
This question has been asked before, but I have looked
I strongly recommend you take a look at Visual NHibernate from Slyce. I have used all tools out there both free and commercial and found it to be the only one that does exactly what it says on the can and more.
It allows you to design your entities either from the ground up or from an existing database.
(source: slyce.com)
It is compatible with most existing dbs
with future suport for Postgresql.
It allows you to customise your entities to your specs
(source: slyce.com)
Other than its ability to go back and forth smoothly between entities and db during design, my most favorate feature is the Diff View
(source: slyce.com)
which shows changes it will make to code before it generates the code. So not only can you see the effect of your changes but you can also cancel the codegeneration in time or simply output to a different folder.
This tool has many many fine features and is now mature. Lastly, there is a 30% discount going on so ;-)