Example #1
0
/* Function to Suspend AF Engine */
void isp_af_suspend(struct isp_af_device *af)
{
	unsigned long irqflags;

	spin_lock_irqsave(af->lock, irqflags);
	if (af->enabled)
		__isp_af_enable(af, 0);
	spin_unlock_irqrestore(af->lock, irqflags);
}
Example #2
0
/* Function to Resume AF Engine */
void isp_af_resume(struct isp_af_device *isp_af)
{
	unsigned long irqflags;

	spin_lock_irqsave(isp_af->lock, irqflags);
	if (isp_af->enabled)
		__isp_af_enable(isp_af, 1);
	spin_unlock_irqrestore(isp_af->lock, irqflags);
}
Example #3
0
/* Function to Enable/Disable AF Engine */
int isp_af_enable(int enable)
{
	int rval;

	rval = __isp_af_enable(enable);

	if (!rval)
		afstat.pm_state = enable;

	return rval;
}
Example #4
0
/* Function to Enable/Disable AF Engine */
void isp_af_enable(struct isp_af_device *isp_af, int enable)
{
	unsigned long irqflags;

	spin_lock_irqsave(isp_af->lock, irqflags);

	if (!isp_af->config.af_config && enable) {
		spin_unlock_irqrestore(isp_af->lock, irqflags);
		return;
	}

	__isp_af_enable(isp_af, enable);
	isp_af->enabled = enable;

	spin_unlock_irqrestore(isp_af->lock, irqflags);
}
Example #5
0
/* Function to Enable/Disable AF Engine */
void isp_af_enable(struct isp_af_device *isp_af, int enable)
{
	unsigned long irqflags;

	spin_lock_irqsave(isp_af->lock, irqflags);

	if (!isp_af->config.af_config && enable) {
		spin_unlock_irqrestore(isp_af->lock, irqflags);
		return;
	}

	/* Check errata i421 for AF and AE paxel size relationship */
	if (enable && isp_af_validate_errata_i421(isp_af, &isp_af->config)) {
		spin_unlock_irqrestore(isp_af->lock, irqflags);
		return;
	}

	__isp_af_enable(isp_af, enable);
	isp_af->enabled = enable;

	spin_unlock_irqrestore(isp_af->lock, irqflags);
}
Example #6
0
/* Function to Resume AF Engine */
void isp_af_resume(void)
{
	if (afstat.pm_state)
		__isp_af_enable(1);
}
Example #7
0
/* Function to Suspend AF Engine */
void isp_af_suspend(void)
{
	if (afstat.pm_state)
		__isp_af_enable(0);
}