Re: Fwd: [Swsusp-devel] Kernel 2.6 pm_send_all() issues.

From: Stephen Hemminger
Date: Wed Feb 11 2004 - 01:50:12 EST


Michael Frank wrote:

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

I sent them a patch that converts the PCI device to the device model and
uses suspend/resume hooks. But they didn't seem to put it in the current version
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/