We have a 3750 Stack running EMI Code that handles our routing.
Here is rough run down on our vlans
Vlan 1 - native, servers, wokrstations
Vlan 2 - Cisco VoIP Servers (call manager, unity, etc)
Vlan 3 - IP Phone Vlan (routing interface helper address goes to vlan
2)
What the issue is when we plug in a NEW OUT OF THE BOX phone the port
is changed into the correct VLAN but it does not get an IP address
from the servers in VLAN2, then eventually it gets an address from a
server in VLAN1, remembering that the helper address on vlan 3 points
to a server on vlan 2.
BUT if we change the port to be a member of the same VLAN as the VoIP
servers (Vlan2) it gets a IP address (when we configure the scope
range for that VLAN) then it registers with the Call Mananger ok. THEN
when you put the phone back into VLAN3 it gets a correct IP Address
and registers with the Call Manager. Again this only happens with
phones Brand New out of the box this is a pain for 200 odd phones.
IOS: C3750 Software (C3750-I5-M), Version 12.2(1

SE1, RELEASE
SOFTWARE (fc2)
BOOTLDR: BOOTLDR: C3750 Boot Loader (C3750-HBOOT-M) Version
12.1(11r)AX, RELEASE SOFTWARE (fc1)
-- Attempted Configurations --
interface FastEthernet2/0/23
switchport mode access
switchport voice vlan 3
mls qos trust device cisco-phone
mls qos trust cos
spanning-tree portfast
interface FastEthernet2/0/20
switchport trunk encapsulation dot1q
switchport mode trunk
switchport voice vlan 3
mls qos trust device cisco-phone
mls qos trust cos
spanning-tree portfast
Any info on this would be great thanks.