Hi @katha
I hope you are doing well!
Could you detail us further the non-linear variations that you are seeing for the duty cycle and PWM period? For example , when you call PWM_UpdatePwmDutycycle() to increment/decrease/set the duty cycle , the error in the duty cycle edges can vary in many different clock cycles?
Our colleague Xiangjun Ron provides a document and demo code introducing the Nano-edge placement. To get fine edge control the period the FRACVAL registers are also used. Nano-edge placement feature for eFlexPWM module based on KV4x
According to the KV44, the fine edge control , can be also simulated with dithering, this applies for those sub-modules that are not supported by the Nano edge placer.

All the best
Diego.