|
|
|
@ -241,6 +241,15 @@ static int set_framesize(sensor_t *sensor, framesize_t framesize)
@@ -241,6 +241,15 @@ static int set_framesize(sensor_t *sensor, framesize_t framesize)
|
|
|
|
|
|
|
|
|
|
WRITE_REG_OR_RETURN(BANK_DSP, R_BYPASS, R_BYPASS_DSP_BYPAS); |
|
|
|
|
WRITE_REGS_OR_RETURN(regs); |
|
|
|
|
if (sensor->xclk_freq_hz == 10000000) { |
|
|
|
|
if (framesize <= FRAMESIZE_CIF) { |
|
|
|
|
WRITE_REG_OR_RETURN(BANK_SENSOR, CLKRC, CLKRC_2X_CIF); |
|
|
|
|
} else if (framesize <= FRAMESIZE_SVGA) { |
|
|
|
|
WRITE_REG_OR_RETURN(BANK_SENSOR, CLKRC, CLKRC_2X_SVGA); |
|
|
|
|
} else { |
|
|
|
|
WRITE_REG_OR_RETURN(BANK_SENSOR, CLKRC, CLKRC_2X_UXGA); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
WRITE_REG_OR_RETURN(BANK_DSP, ZMOW, (w>>2)&0xFF); // OUTW[7:0] (real/4)
|
|
|
|
|
WRITE_REG_OR_RETURN(BANK_DSP, ZMOH, (h>>2)&0xFF); // OUTH[7:0] (real/4)
|
|
|
|
|
WRITE_REG_OR_RETURN(BANK_DSP, ZMHH, ((h>>8)&0x04)|((w>>10)&0x03)); // OUTH[8]/OUTW[9:8]
|
|
|
|
|