Hello, I have recently had problems with my 03 Mazda Protege5 2.0 5 speed manual. The first issue I had was the EGR valve, I got a cel for it, cleaned it put it back in. I still wound up going out and buying a new EGR and replacing it completely. In this process I also had to wind up replacing the whole throttle body assembly to fix the IAC valve which I broke the plug off and was the only reason I had to replace this. After that the car ran great for 3 days. I was going down the highway about 70mph and it kicked itself back into limp mode with a new CEL. This time it was a knock sensor bank 1. I bought a new 1 and replaced it as well. Now, I have no CEL lights but the car is still stuck in limp mode. It idles fine. However it will not rev over 2,500-3,000 RPMs depending on the day weather in gear or in neatural and will not go over 20 MPH. It is buring white smoke when I first start the vehicle but it clears out. It seems to be running rich and dumping too much fuel versus the air mixture. Somebody suggested to me that it was the MAF however, I disconnected the MAF and the CEL kicked on then I reconnected it restarted the engine and the CEL is off. I thought these ECU's were supposed to be smart? I am at a stand still and am looking for more suggestions before I dump more money into this. Thanks!