Phonological condiditioning is the most widely acknowledged source of reduplicative alternation: in such a scenario, the form of the reduplicant for any stem is fully predictable in a language, given knowledge of the reduplicative pattern, which comprises a coherent set of generalizations.
Languages with morphological and lexical conditioning use more than one reduplicative pattern; such systems are widely attested, if underanalyzed. In morphologically conditioned alternations, each pattern is associated with a distinct morphosyntactic function. The mapping of form to function in thus isomorphic. In lexically conditioned alternations, different patterns may carry the same function, and the choice of pattern depends on the root. Such mapping is instead allomorphic.
My typological research suggests that even allomorphic systems are highly constrained: that languages have an upper bound on the number of reduplicative forms, which they respect whether their reduplicative systems are isomorphic or allomorphic.