I've encountered some strange behavior in tms320f28379d (or more precisely type4 epwm unit).
A pwm module is configured for up-down mode, with non-zero initial value written in CNTR register. When the pwm module is started by writing 1 to 'TBCLKSYNC', it initially counts up all the way to 65535 (running over PRD) , wraps to zero, after which the normal operation continues (counts up to PRD and down to zero). The expected behavior would be to count up until PRD and than start counting down from PRD value to zero.
If CNTR starts with zero initial value it operates normally (counts up reaching PRD after which it starts counting down to zero).
I tested only in up-down mode.
A workaround is to configure pwm modules to use sync signal, write a proper phase value to the phase registers and issue the software sync command.
Edit
Even when I trigger software sync before the counter first runs over, it still does not count to the PRD but runs over the full value again. So essentially,one must not write directly to CNTR register.
I'm using LaunchPad TM320F28379D, if that matters at all.