I have a Toshiba Satellite 4100XCDT laptop, with a Cyber Trident 9525DVD graphic card.
X doesn't handle my graphic card right, when resuming my laptop. The screen crashes: only a reset/shutdown from the outside helps.
When switching the virtual console before executing a "apm -s", things work fine. If you have the apmd running, this can be done automatically. The kernel notifies apmd about a pending suspend. On such an event apmd invokes scripts before allowing the system to go into suspend. Likewise when the system is resumed again the apmd is notified of that event too.
The debian package suspend-vt installs a tiny program in /etc/apm/event.d/ that switches the virtual console before a suspend/standby to a safe state, and switches back on resume.