This question is probably better suited for LKML.
---------- Forwarded Message ----------
Subject: [Swsusp-devel] Kernel 2.6 pm_send_all() issues.
Date: Tuesday 10 February 2004 04:06
From: Wolfgang Glas <wolfgang.glas@xxxxxxx>
To: swsusp-devel@xxxxxxxxxxxxxxxxxxxxx
Coming back to an earlier post, which states, that NVidia suspend/resume under 2.6.x could be resurrected, if drivers_suspend() and drivers_resume() in swsusp.c are tuned in a way, that pm_send_all() is called, I want to direct the following question to more eligible persons in this list:
I inspected NVidia's driver and I found out, that it's implemented as a character device and hence does not implement the suspend/resume kernel driver interface, which has been introduced in linux-2.6. But nevertheless this driver has the ability to register its own power management handler through pm_register(), an interface already present in linux-2.4 and still used in some 20 drivers present in the linux-2.6.1 code base, most notable some audio driver and some irda drivers.
Diving further into the code, I recognized, that the kernel function ppm_send_all(), which calls all handlers registered through pm_register() is never called inside of swsusp2.c
So, what I want to ask is, whether the pm_register/pm_send/pm_send_all interface is simply deprecated and the NVidia driver (and other drivers, which use pm_register) should be reeingineered in order to use the resume/suspend interface of linux-2.6. Or should we try to modify swsusp2.c in a way, that it additionally calls pm_send_all for these drivers?
TIA,
Wolfgang