FFMPEG ignores time stamps set during encoding with NVENC

Whenever I am muxing video stream in FFMPEG encoded with NVENC I receive the following message:

[mp4 @ 0000023836b82040] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly

I am setting timestamp on each encode input:

NV_ENC_PIC_PARAMS picParams = {};
picParams.version = NV_ENC_PIC_PARAMS_VER;
picParams.pictureStruct = NV_ENC_PIC_STRUCT_FRAME;

const double conversionFactor = 90000.0 / 10000000.0;
const int64_t ffmpegTimestamp = static_cast<int64_t>(timestamp * conversionFactor);
picParams.inputTimeStamp = picParams.frameIdx == 0? 0:ffmpegTimestamp;

//the rest of params...

I tried different timestamp resolutions, nothing. FFMPEG doesn’t catch those.
What is the correct way of doing that?

“This is deprecated and will stop working in the future. Fix your code to set the timestamps properly”

This is a message for us, ffmpeg developers, to fix our code, as some of public APIs got deprecated. This is like yuvj420p pixel format thar was deprecated 8 years ago, but is still used in mjpeg code.