Draft: s5k3l6xx: Add init and full-res regs from the Android driver
Not meant to be merged (unless @dorota.czaplejewicz decides otherwise), but since I've diffed the register values (at least for the full res mode so far) I figured that listing it here may be useful.
Merge request reports
Activity
One register that IMO should actually be changed is
0x307b
, as described in https://source.puri.sm/Librem5/linux-next/-/issues/317#note_157305. That one alone makes drastic change, all the rest needs some proper testing to see what difference they actually make.mentioned in issue #317
482 501 483 502 static const struct s5k3l6xx_reg setstream[] = { 484 503 { S5K3L6XX_REG_DATA_FORMAT, S5K3L6XX_DATA_FORMAT_RAW8, 2 }, 504 { 0x306a, 0x2f4c, 2}, // default: 2f6c 505 { 0x307a, 0x0d20, 2}, // 0d80 506 { 0x309e, 0x002d, 2}, // 0000 507 { 0x3072, 0x0013, 2}, // 000d 508 { 0x3074, 0x0977, 2}, // 0974 mentioned in issue #325
added camera label
mentioned in merge request !398 (merged)
Comparing it with the reg set used for Galaxy S10 in LineageOS - https://github.com/LineageOS/android_kernel_samsung_exynos9820/blob/8e4c7f1677d0ef1f2faccd142dd05f5029fdbe44/drivers/media/platform/exynos/fimc-is2-f62/sensor/module_framework/cis/fimc-is-cis-3l6-setA.h:
Register Reset value A20e S10 0x3018 0xcb00 0xc300 0xc500 0x38da 0x0010 0x000a - 0x38dc 0x000d 0x000b - 0x38d6 0x000c 0x000a - 0x3402 0x4e46 - 0x4e42 There are several registers there that slightly but visibly change the appearance. Applying one of those sets as a whole gets rid of green tint in poorly lit photos (green imbalance?).