Compatibility Matrix — NA1 vs NA2

Compatibility Matrix — Note Air 1 vs Note Air 2

Side-by-side comparison of the two devices. This document establishes why a direct partition-level port is impossible and which components can be salvaged. Source: NA1 data from device exploration (Phase 01); NA2 data from firmware extraction (v4.0, build 49339).


Hardware Platform

PropertyNote Air 1Note Air 2Compatible?
SoCSDM636 (Snapdragon 636)SDM662 (Snapdragon 662)❌ Different SoC family
Platform codenamesdm660bengal
CPU architecturearm64-v8aarm64-v8a✅ Same ISA
CPU coresKryo 260 (4×A73 + 4×A53)Kryo 260 (4×A73 + 4×A53)✅ Same core types
GPUAdreno 509Adreno 610❌ Different GPU
Storage buseMMCUFS❌ Different bus
DisplayE-ink, onyx_epdc_fb driverE-ink, likely similar driver⚠️ Kernel-specific
TouchWacom EMR (i2c)Unknown (likely similar)❓ Unknown

Software Stack

PropertyNote Air 1Note Air 2Compatible?
Android version10 (SDK 29)11 (SDK 30)❌ Different API level
Kernel version4.4.x4.19.157❌ Different branches
VNDK2930❌ Different VNDK
Boot image headerv0v2❌ Different format
TrebleEnabledEnabled
Partition schemeStatic, single-slotDynamic (super), A/B, virtual A/B❌ Fundamentally different
EncryptionFDE (full-disk)FBE (file-based)
Userdata FSext4f2fs
hwcomposerhwcomposer.sdm660.sodisplay composer service (bengal)
grallocgralloc.sdm660.sogralloc.bengal.so

Portability Assessment

ComponentPortable?Notes
Onyx APKs (kreader2, knote2, etc.)✅ YESStandard Android APKs, work on SDK 29+
System framework⚠️ MAYBEVia Treble/GSI, but VNDK 29/30 mismatch may block
Vendor partition❌ NOEntirely different SoC HALs
Kernel / boot.img❌ NODifferent SoC, different kernel version
ABL / XBL❌ NOChip-specific bootloaders
fstab⚠️ PARTIALNA2 ships fstab.emmc variant; dynamic partitions incompatible

Verdict

The original project assumption that both devices use SDM636 is incorrect. The Note Air 2 uses SDM662 (Bengal platform) — a completely different SoC. This rules out a direct firmware port at the partition level.

Viable approaches in priority order:

  1. APK extraction — Extract Onyx apps from NA2 system.img and sideload on NA1
  2. GSI approach — Flash Android 11 GSI on NA1 using NA1’s vendor, overlay NA2 apps
  3. Feature-level port — Cherry-pick specific NA2 improvements as APK updates on NA1

More posts