We completely describe the Brill-Noether theory for curves in the primitive linear system on generic abelian surfaces, in the following sense: given integers d and r, consider the variety V r d (|H|) parametrizing curves C in the primitive linear system |H| together with a torsionfree sheaf on C of degree d and r + 1 global sections. We give a necessary and sufficient condition for this variety to be non-empty, and show that it is either a disjoint union of Grassmannians, or irreducible. Moreover, we show that, when non-empty, it is of expected dimension. This completes prior results by Knutsen, Lelli-Chiesa and Mongardi.