Can you console onto the switches at least?
Here is some config I made on some 4548s once upon a time:
! *** VLAN ***
!
vlan name 1 "Default"
vlan create 42 name "Voice" type port
vlan create 52 name "Data" type port
vlan ports 1/1-47 tagging unTagPvidOnly filter-untagged-frame disable filter-unregistered-frames enable priority 0
vlan ports 1/48 tagging tagAll filter-untagged-frame enable filter-unregistered-frames enable priority 0
vlan ports 2/1-47 tagging unTagPvidOnly filter-untagged-frame disable filter-unregistered-frames enable priority 0
vlan ports 2/48 tagging tagAll filter-untagged-frame enable filter-unregistered-frames enable priority 0
vlan members 1 NONE
vlan members 42 1/ALL,2/ALL
vlan members 52 1/ALL,2/ALL
vlan ports 1/1-47 pvid 52
vlan ports 1/48 pvid 1
vlan ports 2/1-47 pvid 52
vlan ports 2/48 pvid 1
"pvid" is means, "this is the boss-VLAN on this port"
so, "untagpvidonly" means, 802.1q trunk with the boss-VLAN as native
Your edge ports are therefore "untagpvidonly" with Data-VLAN as native and Voice-VLAN tagged.
Your trunk ports are "tagall"
So, the order is:
- define your VLANs
- define 802.1q trunk or access port
- make each port a member in each VLAN it needs to pass
- define which VLAN is PVID on each port