Can sb explain throttle body to me? (pic included) Trying to solve high idle RPM

#1

I am having a check engine light with code P0505 and experiencing ~1500 idle rpm with my 2001 corolla, so I took out the throttle body and cleaned it with some carburetor cleaner and replaced the IAC with a new one. Unfortunately the light comes back four days later. :( Note that high RPM only happens when the car is in P and warm. When the car is in D or cool, the idle rpm is around 750.

During the cleaning process, I found the throttle body is different than what I could found on the Internet, and I'd like to make sure I didn't miss something. The left pic shows the front of the throttle body and the right pic has the IAC removed and reveals the bottom. The IAC allows air going from point hole A, which is in front of throttle plate, to hole C, which is after the throttle plate, bypassing the plate in the middle.

My questions are:
1. IAC controls idle air intake, but nobody talks about under which gear? Park? Drive? Neutral? or all of them??
2. What is hole B's function? I might be wrong but it goes to the engine via a tube so it seems to have something to do with air intake, but there is no control sensor. If that's true, under which condition the engine will take air from hole B rather than hole C?
 
Top