On Thu, May 12, 2016 at 11:54:54AM +0800, John Hsu wrote:
On 5/12/2016 1:15 AM, Mark Brown wrote:
I'm afraid this still leaves me none the wiser, sorry. If this switching to the internal clock is essential to the device operation then I'd expect it to be made transparent to callers so it should happen transparently rather than appearing via set_sysclk(). If it's not and it's just a performance optimisation then erroring out is definitely excessive but if the optimisation can be implemented transparently then it might be nice to do that.
In the driver patch, the internal clock switching is transparently done by driver when the codec runs advanced jack detection. Our purpose is to prevent the machine turns on the internal clock by itself when no headset connected. That will not affect function work but make more power consumption. Maybe we can change to clock disabled quietly when the machine turns on the internal clock when no headset connected. Is it the right way?
Yes, that seems good. Printing a warning is also fine because it does increase power consumption but erroring out seems excessive.