Lines Matching refs:gain
44 * The input gain is shifted by IMX274_GAIN_SHIFT to get
45 * decimal number. The real gain is
53 * min gain is 1X
54 * max gain is calculated based on IMX274_GAIN_REG_MAX
62 #define IMX274_GAIN_CONST (2048) /* for gain formula */
537 * @gain: Pointer to gain ctrl structure
544 struct v4l2_ctrl *gain;
1421 priv->ctrls.gain->val = IMX274_DEF_GAIN;
1467 * gain is not affected.
1552 * imx274_set_digital gain - Function called when setting digital gain
1554 * @dgain: Value of digital gain.
1556 * Digital gain has only 4 steps: 1x, 2x, 4x, and 8x
1576 * imx274_set_gain - Function called when setting gain
1578 * @val: Value of gain. the real value = val << IMX274_GAIN_SHIFT;
1581 * Set the gain based on input value.
1589 u32 gain, analog_gain, digital_gain, gain_reg;
1591 gain = (u32)(ctrl->val);
1594 "%s : input gain = %d.%d\n", __func__,
1595 gain >> IMX274_GAIN_SHIFT,
1596 ((gain & IMX274_GAIN_SHIFT_MASK) * 100) >> IMX274_GAIN_SHIFT);
1598 if (gain > IMX274_MAX_DIGITAL_GAIN * IMX274_MAX_ANALOG_GAIN)
1599 gain = IMX274_MAX_DIGITAL_GAIN * IMX274_MAX_ANALOG_GAIN;
1600 else if (gain < IMX274_MIN_GAIN)
1601 gain = IMX274_MIN_GAIN;
1603 if (gain <= IMX274_MAX_ANALOG_GAIN)
1605 else if (gain <= IMX274_MAX_ANALOG_GAIN * 2)
1607 else if (gain <= IMX274_MAX_ANALOG_GAIN * 4)
1612 analog_gain = gain / digital_gain;
1615 "%s : digital gain = %d, analog gain = %d.%d\n",
1640 /* convert register value back to gain value */
1645 "%s : GAIN control success, gain_reg = %d, new gain = %d\n",
2090 imx274->ctrls.gain = v4l2_ctrl_new_std(