adbd daemon did NOT work after system wakeup

I am working on an embedded Linux system (kernel5.19.10), and adbd is running in the device in background. I can run adb shell and adb push adb pull command from PC to the device.

Now I found when the device is woken up from hibernate state, the adb commands in the PC did NOT work any more unless the adbd in the device is restarted.

So I have 2 questions:

  1. Why adbd did NOT work after the device is suspend/resumed, can it be fixed?
  2. How can the userspace know there is a system wakeup event happened (system is woken up), is there any notification or interface exposed to the user space to know the power management events?