Consider the following method of card shuffling. Start with a deck of $N$ cards numbered 1 through N. Fix a parameter $p$ between 0 and 1. In this model a ``shuffle'' consists of uniformly selecting a pair of adjacent cards and then flipping a coin that is heads with probability p. If the coin comes up heads then we arrange the two cards so that the lower numbered card comes before the higher numbered card. If the coin comes up tails then we arrange the cards with the higher numbered card first. In this paper we prove that for all p not equal to 1/2, the mixing time of this card shuffling is O(N^2), as conjectured by Diaconis and Ram [DR]. A novel feature of our proof is that the analysis of an infinite (asymmetric exclusion) process plays an essential role in bounding the mixing time of a finite process.