OK, raspiraw i2c command code is really tidy.
Code: Select all
...
struct sensor_regs ov5647_mode7[] =
{
addreg(0x0100, 0x00),
addreg(0x0103, 0x01),
addreg(0x3034, 0x1A),
addreg(0x3035, 0x21),
addreg(0x3036, 0x69),
addreg(0x303C, 0x11),
addreg(0x3106, 0xF5),
addreg(0x3827, 0xEC),
addreg(0x370C, 0x0F),
addreg(0x3612, 0x59),
addreg(0x3618, 0x00),
addreg(0x5000, 0x06),
addreg(0x5002, 0x40),
addreg(0x5003, 0x08),
addreg(0x5A00, 0x08),
addreg(0x3000, 0x00),
addreg(0x3001, 0x00),
addreg(0x3002, 0x00),
addreg(0x3016, 0x08),
addreg(0x3017, 0xE0),
addreg(0x3018, 0x44),
addreg(0x301C, 0xF8),
addreg(0x301D, 0xF0),
addreg(0x3A18, 0x00),
addreg(0x3A19, 0xF8),
addreg(0x3C01, 0x80),
addreg(0x3B07, 0x0C),
addreg(0x380C, 0x07),
addreg(0x380D, 0x3C),
addreg(0x3814, 0x71),
addreg(0x3815, 0x35),
addreg(0x3708, 0x64),
addreg(0x3709, 0x52),
addreg(0x3808, 0x02),
addreg(0x3809, 0x80),
addreg(0x380A, 0x01),
addreg(0x380B, 0xE0),
addreg(0x3800, 0x00),
addreg(0x3801, 0x10),
addreg(0x3802, 0x00),
addreg(0x3803, 0x00),
addreg(0x3804, 0x0A),
addreg(0x3805, 0x2F),
addreg(0x3806, 0x07),
addreg(0x3807, 0x9F),
addreg(0x3630, 0x2E),
addreg(0x3632, 0xE2),
addreg(0x3633, 0x23),
addreg(0x3634, 0x44),
addreg(0x3636, 0x06),
addreg(0x3620, 0x64),
addreg(0x3621, 0xE0),
addreg(0x3600, 0x37),
addreg(0x3704, 0xA0),
addreg(0x3703, 0x5A),
addreg(0x3715, 0x78),
addreg(0x3717, 0x01),
addreg(0x3731, 0x02),
addreg(0x370B, 0x60),
addreg(0x3705, 0x1A),
addreg(0x3F05, 0x02),
addreg(0x3F06, 0x10),
addreg(0x3F01, 0x0A),
addreg(0x3A08, 0x01),
addreg(0x3A09, 0x2E),
addreg(0x3A0A, 0x00),
addreg(0x3A0B, 0xFB),
addreg(0x3A0D, 0x02),
addreg(0x3A0E, 0x01),
addreg(0x3A0F, 0x58),
addreg(0x3A10, 0x50),
addreg(0x3A1B, 0x58),
addreg(0x3A1E, 0x50),
addreg(0x3A11, 0x60),
addreg(0x3A1F, 0x28),
addreg(0x4001, 0x02),
addreg(0x4004, 0x02),
addreg(0x4000, 0x09),
addreg(0x4837, 0x17),
addreg(0x4800, 0x34),
addreg(0x3503, 0x03),
addreg(0x3820, 0x41),
addreg(0x3821, 0x03),
addreg(0x380E, 0x03),
addreg(0x380F, 0x12),
addreg(0x350A, 0x00),
addreg(0x350B, 0x10),
addreg(0x3500, 0x00),
addreg(0x3501, 0x1D),
addreg(0x3502, 0x80),
addreg(0x3212, 0xA0),
addreg(0x0100, 0x01),
};
...
I did split out the pure bytes from md7.csv and from above "sensor_regs ov5647_mode7" (mod.txt). As you can see the diff is device probing (finding OV4647) and the final termination of camera frame capturing!
So just adding new "sensor_regs ov5647_mode8" for new "-md 8" raspiraw mode with the needed values for 90fps (to be looked up from 60a.csv to 90a.csv diff) is all that is needed ...