The car runs better than ever now ...
it must be the ICV that was stuck before. I clean it pretty good with TB cleaner and make sure that the little metal gate flip easily with a twist of my hand. Apperently, it was pretty dirty and stuck before - God knows when it was cleaned last time.
Link on how to clean ICV (sorry for posting other forum link)
http://forums.bimmerforums.com/forum.../t-589747.html
Just for case study and reference sake, here is the background of the problem and fix.
1.) 94' 530ia with 106kmi, all the sudden, started to have intermitently rough idle at stop or 1-2 mins after start (not temperature dependence).
2.) the rough idle got worse very quickly (hunting up and down) so the car stalls if it happens. CEL is on and off intermitently with 1222 and 1213 codes. O2 sensors are only 5K miles new. And there is no reason why both went (2 fault codes) at the same time. Once stalling, the car can start right back up with no problem.
3.) Due to a quick search, I thought it was intake leak problem so I went and reseal the whole intake and valve cover gaskets, clean TB and ICV and reboot. It doesn't fix my problem. ICV buzz's (touch and feel with finger) when ignition key is on (engine off).
4.) Did a big search. There were a few rare M60 V8 cases that MAF was the cause. I went ahead and unplug MAF. The car now throw 1215 and CEL is on all the time. But the car run fine (seems run rich though, in safemode) and never stall. The car is now drive able.
5.) Order new MAF, install it... PROBLEM fixed! No more rought idle. No more code and CEL. The car now runs like a cat.
Hope this helps M60 folks some how. Thanks guys for all the help.
94' AlpineWhite 530i, 5 spd Auto, 112K miles, Mfg in 4/93