[0/3][RESEND] Device assignment code clean up and MSI disable support

Sheng Yang
2008-12-30T05:49:35Z

I splitted the former patchset into 3 smaller one. Here is the first one.