Coil whine has always been impossible for me to predict. Sure, I know that PSUs can play a role in it but I've had cards that have given me coil whine regardless of what PSU I had at the time. Since 2009, I've purchased two 80+Gold PSUs that are both rated for 1kW. One is an OCZ OCZ1000M and the other is an EVGA 1000 G2 Supernova because I only use high-end power supplies. One of my R9 Furies used to have audible coil whine and it happened with both of my PSUs. However, it went away on its own eventually and just for fun, I tried swapping PSUs and it still wouldn't whine anymore.
Undervolting is never a bad thing but you don't need MSi Afterburner to do it because Adrenalin already has this feature:
Now, in my experience, undervolting has had no effect on coil whine (that's only
my experience, YMMV). This is because every time that I've heard coil whine, it was caused by skyrocketing frame rates during blank screens or cinematics. Adrenalin has a really cool feature called
Radeon Chill that can be used to limit your frame rates to your monitor's refresh rate. This will not hurt your performance at all (because you can only get as many FPS as your monitor can display anyway) but it
will prevent your frame rate from skyrocketing at certain times which wastes electricity and can cause audible coil whine:
I would recommend using Radeon Chill for all of your games because what's the point of having your card rendering a higher frame rate than your monitor can display? It won't improve anything and can cause some annoying screen-tearing.