A message for Linux.com registered users: We are in the process of making changes to the Linux forums. From Monday, 8/13/18 at 6:00 PM PT to Tuesday, 8/14/18 at 4:00 PM PT, you will be unable to access the forums. They will re-launch as soon as possible on Tuesday, 8/14/18 with new features and improved functionality. Thank you for your patience and stay tuned for the new improved forums.
I am implementing suspend and resume methods in the USB client driver. I have done the following things.
1)I register a suspend and resume methods in usb_driver structure.
2)I am calling usb_autopm_pet_interface and usb_autopm_pet_interface functions in the open and release methods to change the pm_usage_cnt value in usb_interface structure.
The suspend method is not calling when the pm_usage_cnt=0 and the resume method also not calling when the pm_usage_cnt>0.
Is there any common suspend and resume methods which will be called by the usb core other than the suspend and resume methods registered by the client driver.
CONFIG_USB_SUSPEND is already enabled.
Please help me to find why the USB core is not calling the registered the suspend and resume methods.