Commit graph fp6-img/aports/temp
Author SHA1 Message Date
b48702225b libcamera: ship the IMX896 colour tuning (r6)
Some checks failed
image / image (push) Failing after 4m4s
Adds imx896.yaml (CCMs for 2800/4000/5750 K) so the main camera gets
real colour instead of the uncalibrated fallback. The matrices are
numeric calibration data read out of the stock Android tuning blob -
measured spectral response of this sensor, not authored expression -
and are shipped by the project owner's decision, consistent with the
vendor-derived data this image already carries. Durable replacement is
to measure our own from a colour chart.

Note the file lists Adjust/Agc/Af as well as BlackLevel/Awb/Ccm: a
sensor-specific tuning file REPLACES the fallback's algorithm list, so
omitting them silently disables auto-exposure and autofocus.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-17 02:58:31 +02:00
236015ef36 libcamera: af: re-baseline the scene reference after a sweep (r5)
Some checks failed
image / image (push) Has been cancelled
Hardware finding from the first r4 run on the phone: the focus-loss
detector compared the settled scene against the maximum sharpness
recorded during the sweep, which was measured under a different AGC
state. On the FP6 that maximum read 4848088 and the same position two
stats frames later read 1995445, so the detector fired immediately and
the lens swept forever. Patch 0014 takes the reference after the lens
settles and requires four consecutive out-of-band frames.

Verified on the phone: r4 re-swept without end, r5 completes one sweep
and stays put.
2026-08-17 02:35:59 +02:00
40ccdfeed6 libcamera: backport contrast autofocus for the main camera (r4)
Some checks failed
image / image (push) Has been cancelled
The DW9784 VCM works and libcamera discovers it through the sensor's
ancillary link, but nothing in the software ISP ever moves it. Backport
the out-of-tree autofocus work onto v0.7.2:

- 0007-0009 are Vasiliy Doylov's focus control, contrast autofocus and
  focus-loss detection from the softisp-playground branch;
- 0010 is Pavel Machek's Librem5-tested robustness work (centre-window,
  brightness-normalised sharpness, two-phase sweep, settle skip),
  squashed and adapted;
- 0011-0013 are ours: the lens write no longer sits inside the
  no-frame-start-emitter branch, the lensless-camera paths are guarded,
  and AfMode is advertised with a continuous default so that stock
  applications get autofocus without sending AfTrigger.

Provenance and the adaptations made to each patch are recorded in the
patch commit messages.
2026-08-17 02:02:45 +02:00
81948970e1 libcamera: add the IMX896 sensor helper and properties (r3)
Some checks failed
image / image (push) Failing after 4m17s
Teaches the software ISP's AGC the IMX896 gain law
(gain = 16384/(16384-code), inverted from the vendor driver and
round-tripped against all 3009 vendor gain-table entries, max error
0.049%) and adds the sensor properties (1.0um unit cell, test-pattern
map). Same shape as the OV13B10 pair; both verified to apply and
compile on v0.7.2 after 0001-0004.

The extracted-CCM tuning yaml is deliberately NOT packaged yet - the
color matrices come from the vendor Chromatix blob and the licensing
call is open (see the camera journal).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-16 21:03:10 +02:00
34cfc098d8 camera: enable the FP6 ultra-wide pipeline (kernel config + patched libcamera)
All checks were successful
image / image (push) Successful in 1h51m52s
Kernel config: CONFIG_VIDEO_OV13B10=m + CONFIG_VIDEO_DW9714=m — the camss
core, CAMCC and CCI were already enabled; the sensor and VCM drivers were
the only missing pieces. The camera carries themselves land via
milos-linux combined-stable (merge of the 'camera' topic branch,
nondescriptpointer's 5 patches, authorship preserved).

libcamera: new temp/ aport overriding pmOS 99990.7.2-r1 with -r2, adding
nondescriptpointer's OV13B10 sensor helper (gain = code/128, enables the
software-ISP AGC/AWB) and sensor properties patches on top of the pmOS
0.7.2 APKBUILD. Patch sha512s re-recorded from the actual files (his
APKBUILD diff carried stale hashes); all four patches verified to apply
against the v0.7.2 tarball.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-16 04:08:36 +02:00
283996b507 modemmanager: skip the test suite under qemu
3 of 38 glib tests SIGABRT under qemu-user emulation; they pass on
native builders and do not touch the patched GNSS paths.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 23:07:20 +02:00
4de0ffc316 libqmi: opt out of crossdirect like modemmanager
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 22:53:17 +02:00
2019e158aa modemmanager: versioned libqmi-dev makedep; kernel pkgver date stamping
pmbootstrap's build plan is not dependency-ordered: MM built first and
grabbed the cached 1.39.0 libqmi from the volume's package repo. The
versioned makedepend states the real requirement and forces our bumped
libqmi to build first. Kernel pkgver gains the source commit date so
registry-subscribed phones receive kernel updates.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 22:39:14 +02:00
1a73502479 libqmi: bump snapshot past the !470 merge instead of patching
Our MM patches require qmi-glib >= 1.39.1 (the version bumped right after
!470 merged); Alpine's April snapshot reports 1.39.0. Upstream 30f3e998
carries both the TLV work and the version bump, so the local patch goes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 22:19:31 +02:00
8387858f37 modemmanager: opt out of crossdirect (cc1 spawn failure); build under qemu
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 22:05:21 +02:00
11dc33d843 modemmanager: drop the pinned own-subpackage from makedepends
apk cannot satisfy libmm-glib=<ver>-r100 before modemmanager r100 itself
is built; Alpine's reuse of depends_dev inside makedepends only works
when the binary repo already has the same pkgrel.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 21:59:14 +02:00
45caa3ac65 aports: the two modemmanager GNSS patches were never committed
git -C <repo> format-patch -o . writes relative to the -C directory, not
the caller's cwd - the files landed in work/ModemManager and the aport
shipped an APKBUILD referencing patches that did not exist.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 21:47:57 +02:00
da3d908b93 aports: GNSS via forked Alpine libqmi + modemmanager
libqmi: the upstream-merged (!470, in no release yet) LOC Register Events
client-identification TLVs, taken verbatim from upstream main (532de37e).
modemmanager: the AFW engine unlock + Position Report derivation (!1463,
still draft upstream, review-hardened and verified on device). Both as
patches on Alpine's git-snapshot aports, pkgrel=100.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 21:27:48 +02:00