hey,
i dont think its the icv. if it was it would idle eratically.
1.it could be a blocked injector/fuel system fault
2. fuel filter pluged
3. vacume leak throdel body, intake manifold or asocciated hoses
4 fuel tank vent blocked, or fuel pipes restricted
5. fuel pump faulty.
idk if you have it but do the stomp test.
turn the key to the start position, depress the gas pedal 5 times quikly.
keep trying until the engine flashes once after it flashes once it will blink out a code.
like blink pause blink blink, pause blink pause blink
that would be 1211
also if you google PDF files you can find a diffrent bmw manual and download it.