Sources of CP Violation in the Two-Higgs Doublet Model
  Assuming CP violation arises solely through the Higgs potential, we develop the most general two-Higgs doublet model. There is no discrete symmetry that distinguishes the two Higgs bosons. It is assumed that an approximate global family symmetry sufficiently suppresses flavor-changing neutral scalar interactions. In addition to a CKM phase, neutral boson mixing, and superweak effects, there can be significant CP violation due to charged Higgs boson exchange. The value of $\epsilon'/\epsilon$ due to this last effect could be as large as in the standard model. 
Yue-Liang Wu and Lincoln Wolfenstein