Dear Xiang,
The simplest way to restrain basepairs in DNA would be option secondary_structure.enabled=True. If this doesn't work for you in the way you are expecting, try to generate basepairs to restrain by using phenix.secondary_structure_restraints <your_model.pdb>. This will output restraints in form of phil file. You may inspect it to make sure basepairs are correct. Then you can supply this file to geometry minimization along with secondary_structure.enabled=True secondary_structure.find_automatically=False options. This should do the work. You will need relatively fresh version of Phenix, I'd recommend dev-2006 nightly build.
This is relatively new feature, so feel free to provide feedback and get back to us if something doesn't work as you expecting.
Best regards,
Oleg Sobolev.