Hi Len,

thanks for the info. 
the .mrst_isp_pci_runtime_suspend is already implemented in camera driver. and 
it will call the current subdev's power down.

        v4l2_subdev_call(isp->cameras[isp->sensor_curr].camera, core, s_gpio, 
1);

other subdevs' power down were called when doing subdev switch, So, all subdev 
are powered off when .mrst_isp_pci_runtime_suspend is called. does this meet 
the requirement?


Thanks,

-- Yong
Phone (+86) 21-61166334
Lab (+86) 21-61167881


-----Original Message-----
From: Brown, Len 
Sent: Monday, June 13, 2011 1:24 PM
To: He, Yong M; Arjan van de Ven
Cc: MeeGo-kernel@lists.meego.com; Accardi, Kristen C
Subject: RE: [Meego-kernel] [PATCH] MRST Tablet camera driver ver-0.95 
(re-send), fix 8112

> that's a problem... if meego does not support S3, how can camera driver know 
> if the system is going to
> suspend?

The system *doesn't* suspend -- ever.
The "AO" in "AOAC" means "Always On".

Your device driver is responsible for recognizing when its device
is unused or idle, and it is responsible for using device run-time
power management for shutting off the power-draining device.

> is there any other PM interfaces I can use?

Yes.
These are the only ones that matter:

static const struct dev_pm_ops mrst_isp_pm_ops = {
        .runtime_suspend = mrst_isp_pci_runtime_suspend,
        .runtime_resume = mrst_isp_pci_runtime_resume,
        .runtime_idle = mrst_isp_pci_runtime_idle,
};

> otherwise, if I have to add the power-off in the file close method when on 
> one is opening, I can only
> implement a software power down.

When the device is not being used, then the device should take 0 mW.
If the device or its drivers doesn't support that,
then it must be removed from the product.

cheers,
-Len

_______________________________________________
MeeGo-kernel mailing list
MeeGo-kernel@lists.meego.com
http://lists.meego.com/listinfo/meego-kernel

Reply via email to