If it is possible, how can we turn off the
PCMCIA interface (including the WLAN card)
USB port (including attached camera)
any other power consumer
for the time they are not used to save energy from a C program?
The 1.2 version of the Stargate board does not have power-control for the PCMCIA interface, so if you want to shut off the WLAN card you'll probably need to put a FET or something on the board. We know how to do this and can suply details, if necessary. You can put the card into a low-power mode (cardctl suspend), but... It's not always very low power (depending on the card).
You can shut off the USB port. Try removing the USB modules -- I believe that cuts off the power.
You can also put the whole board to sleep, which should gate the power to pretty much everything else. The main way to do this is to write to the /proc/sys/pm/suspend file, which will put the system to sleep. In the next release of the filesystem there shuld be a program.
AFAIK, you can not wake up the system from the WLAN interface.
There is no real documentation on this anywhere that I have found -- the best source of information will be trial-and-error and the Linux-arm mailing lists.
In the platx-7.3 release of the filesystem there should be a sys_suspend script in sbin that does most of what you need. I have attached it here because it's not yet in the CVS sf repository.