This could apply to your situation I think:
If a problem which interferes with the continuous safe operation of the transaxle is identified, the TCM records a diagnostic trouble code in memory, all solenoids are turned off, and the module is switched to limp-in mode.
When limp-in mode is started, the transaxle is locked in 2nd gear if a drive gear had previously been selected. Meanwhile, if P, R or N range was selected, operation is as usual.
If the ignition key is turned to OFF and then back to ON again, limp-in mode is canceled (a record is retained)."
I'd suggest you have the transmission control module scanned for diagnostic trouble codes. We need these to have a clue what's going on here. It could be something fairly simple, like a defective low temperature switch, which tells the transmission not to shift until the transmission fluid warms up.