Restric voice traffic to g729 codec

Greetings:

My objective is to restrict all voice traffic to g729 codec, while at the same time supporting fax traffic that uses g711 codec

The extension hansets interface with the Asterisk PBX via a liniksys PAP2T ATA. The ATA can be optioned to only use the preferred codec. If the preferred codec is set to g729 calls fail.

If I set the user details or peer details under the Trunk settings to only allow g729 codec, then I see that the calls are using the g729 codec. If only the g729 codec is used then fax calls fail.

How should I restrict voice calls to use g729 and fax to g711? The ATA has 2 ports. One could be for a handset and the other could be used by a fax machine. The individual ports could be configured to only use the g729 codec for voice traffic and g711 for fax traffic.

Why do calls fail when I enable the ATA to only use the preferred codec?