ChromeOS image changelog

This file tracks divergences between the KernelCI built ChromiumOS images and upstream ChromiumOS as well as any changes between image relases.

Divergences can be considered tech-debt and in the long run need to be kept under control and minimized, therefore this chanelog should reflect its evolution from version to version.

Fetching latest images

It is recommended to use the latest published image versions for each board from this list.

The latest version can be found either from the directory date name (e.g. chromiumos-asurada/20230208.0) or by the distro_version field in the manifest.json file, where for e.g. R106 is greater than R100.

ChromiumOS release documentation

This page contains information on how ChromiumOS manages its releases, schedules, support windows and other such useful information.

For an up-to-date overview of current and planned releases, please visit the schedule dashboard.

R118

Repo manifest

The following images have been built using this manifest. The repo tool can fetch the sources specified in the manifest file.

Specific instructions on how to fetch and build ChromiumOS from a manifest file can be found in the developer guide.

Supported boards

Direct links for each supported board in this release are provided below for convenience.

BoardKernels shipped in imageKernels tested by KernelCI (replacing image kernels during boot)
arcadadefaultstable:linux-6.1.y
stable:linux-6.6.y
asuradav6.6.x
+ panfrost
stable:linux-6.1.y
stable:linux-6.6.y
bryadefaultstable:linux-6.1.y
stable:linux-6.6.y
cherryv6.6.x
+ 3 display patches
+ panfrost
stable:linux-6.6.y
coraldefaultstable:linux-6.1.y
stable:linux-6.6.y
corsolalinux-next 20231106
+ mtk HW enablement patches
+ panfrost
dedededefaultstable:linux-6.1.y
stable:linux-6.6.y
gruntdefaultstable:linux-6.1.y
stable:linux-6.6.y
guybrushdefaultstable:linux-6.1.y
stable:linux-6.6.y
hatchdefaultstable:linux-6.1.y
stable:linux-6.6.y
jacuzziv6.6.x + panfroststable:linux-6.1.y
stable:linux-6.6.y
namidefaultstable:linux-6.1.y
stable:linux-6.6.y
octopuschromeos-5.15stable:linux-6.1.y
stable:linux-6.6.y
puffdefaultstable:linux-6.1.y
stable:linux-6.6.y
rammusdefaultstable:linux-6.1.y
stable:linux-6.6.y
sariendefaultstable:linux-6.1.y
stable:linux-6.6.y
trogdordefaultstable:linux-6.1.y
stable:linux-6.6.y
volteerdefaultstable:linux-6.1.y
stable:linux-6.6.y
zorkdefaultstable:linux-6.1.y
stable:linux-6.6.y

New workarounds/patches since previous version (R116)

minigbm:

  • Dropped mediatek backend in favor of drv_dumb backend, no more divergence for the platform/minigbm component.

chromiumos-overlay:

  • Reworked the minigbm patch into a single two liner patch to activate drv_dumb
  • Droppped the bump to make chromeos-kernel-5_10 use our own forked 5.10 branch, in favor of the 5.10 branch shipped in R118 by CrOS upstream.
  • Fixed broken portage manifest for media-libs/cros-camera-libfs
  • Masked newer chromeos-chrome ebuild version which doesn’t have a binpkg, to avoid unnecessarily long build times.
  • Bumped chromeos-installer ebuild as a result of forking the platform2 overlay.
  • Bumped MTK kernel used for jacuzzi, asurada and cherry to 6.6.

platform2:

  • Forked to disable failing installer tpm check, until a fix is landed for b:291036452.
  • Backported a fix for secagentd builds against kernel 6.6.

graphics:

  • Backported patch from R119 to avoid a conflict, still need to keep this patch in R118

board-overlays:

  • Forward ported the last remaining commit without conflicts. Will keep it for now but gradually will reduce its footprint as MTK SoCs start using the newer Google kernels with 6.6
  • Bumped octopus to 5.15 because tast fails with 4.14.
  • Cherry is now using the 6.6.x stable upstream kernel branch instead of the older 6.2 -next based branch.

third_party/kernel/v5.10:

  • Removed fork in favor of chromeos-kernel-5_10

third_party/kernel/upstream:

  • Bumped to 6.6.x plus 3 remaining display patches for cherry.

R116

Repo manifest

The following images have been built using this manifest. The repo tool can fetch the sources specified in the manifest file.

Specific instructions on how to fetch and build ChromiumOS from a manifest file can be found in the developer guide.

Supported boards

Direct links for each supported board in this release are provided below for convenience.

BoardKernels shipped in imageKernels tested by KernelCI (replacing image kernels during boot)
asuradav6.2.7
+ display patches
+ panfrost
stable:linux-6.1.y
bryadefaultstable:linux-6.1.y
cherrylinux-next 20230203
+ mtk HW enablement patches
+ panfrost
coraldefaultstable:linux-6.1.y
dedededefaultstable:linux-6.1.y
gruntchromeos-5_10stable:linux-6.1.y
guybrushdefaultstable:linux-6.1.y
hatchdefaultstable:linux-6.1.y
jacuzziv6.2.7
+ panfrost
stable:linux-6.1.y
next-integration-branch (for-kernelci)
namidefaultstable:linux-6.1.y
octopusdefaultstable:linux-6.1.y
puffdefaultstable:linux-6.1.y
rammusdefaultstable:linux-6.1.y
sariendefaultstable:linux-6.1.y
trogdordefaultstable:linux-6.1.y
volteerdefaultstable:linux-6.1.y
zorkdefaultstable:linux-6.1.y

New workarounds/patches since previous version (R114)

  • Updated minigbm backend for Mediatek
  • Updated separate patches for tpm2 flag where it is necessary
  • Added workaround for b/295364868 (orphan_files feature not supported by old kernels) by updating mke2fs.conf
  • Added workaround for PS1/command prompt
  • Backported fix for b/300303585. The fix was upstreamed starting with R119, after which KernelCI should drop it.

Removed workarounds since previous version (R114)

  • Removed trogdor patch revert for arm64 userspace
  • Removed manual kernel version override for grunt
  • Removed build fixes for coral, sarien

R114

Repo manifest

The following images have been built using this manifest. The repo tool can fetch the sources specified in the manifest file.

Specific instructions on how to fetch and build ChromiumOS from a manifest file can be found in the developer guide.

Supported boards

Direct links for each supported board in this release are provided below for convenience.

BoardKernels shipped in imageKernels tested by KernelCI (replacing image kernels during boot)
asuradav6.2.7
+ display patches
+ panfrost
stable:linux-6.1.y
cherrylinux-next 20230203
+ mtk HW enablement patches
+ panfrost
coraldefaultstable:linux-6.1.y
dedededefaultstable:linux-6.1.y
gruntchromeos-5_10stable:linux-6.1.y
hatchdefaultstable:linux-6.1.y
jacuzziv6.2.7
+ panfrost
stable:linux-6.1.y
next-integration-branch (for-kernelci)
namidefaultstable:linux-6.1.y
octopusdefaultstable:linux-6.1.y
rammusdefaultstable:linux-6.1.y
sariendefaultstable:linux-6.1.y
trogdordefaultstable:linux-6.1.y
volteerdefaultstable:linux-6.1.y
zorkdefaultstable:linux-6.1.y

Changes since previous version (R111)

  • Dropped separate initramfs patches, as it is upstream now, this CL

R111

Repo manifest

The following images have been built using this manifest. The repo tool can fetch the sources specified in the manifest file.

Specific instructions on how to fetch and build ChromiumOS from a manifest file can be found in the developer guide.

Supported boards

Direct links for each supported board in this release are provided below for convenience.

BoardKernels shipped in imageKernels tested by KernelCI (replacing image kernels during boot)
amd64-genericchromeos-5_15stable:linux-6.1.y
asuradav6.2.7
+ display patches
+ panfrost
stable:linux-6.1.y
cherrylinux-next 20230203
+ mtk HW enablement patches
+ panfrost
coralchromeos-5_10stable:linux-6.1.y
dededechromeos-5_4stable:linux-6.1.y
gruntchromeos-5_10stable:linux-6.1.y
hatchchromeos-4_19stable:linux-6.1.y
jacuzziv6.2.7
+ panfrost
stable:linux-6.1.y
next-integration-branch (for-kernelci)
namichromeos-4_4stable:linux-6.1.y
octopuschromeos-4_14stable:linux-6.1.y
rammuschromeos-4_4stable:linux-6.1.y
sarienchromeos-4_19stable:linux-6.1.y
trogdorchromeos-5_4stable:linux-6.1.y
volteerchromeos-5_4stable:linux-6.1.y
zorkchromeos-5_4stable:linux-6.1.y

Changes since previous version (R106)

  • Grunt kernel manually forced from 4.14 to 5.10 in overlay patch
  • Trogdor patch to enable arm64 userspace reverted patch
  • CR50 firmware extracted from image to prevent automatic upgrade, available in same directory for standalone upgrade patch1 patch2

R106

Repo manifest

The following images have been built using this manifest. The repo tool can fetch the sources specified in the manifest file.

Specific instructions on how to fetch and build ChromiumOS from a manifest file can be found in the developer guide.

Supported boards

Direct links for each supported board in this release are provided here for convenience:

Changes since previous version (R100)

Known divergences

src/third-party/kernel/next

src/third-party/kernel/upstream

  • Based on v6.2.7 stable kernel release.
  • arch/arm64/configs/defconfig was extended with Mediatek specific config fragments. In the future we might find a better way to fetch these for the upstream kernel builds.
  • Backported and cherry-picked ~ 19 patches to enable Panfrost on mediatek. These will be dropped in future kernel versions.

src/third-party/chromiumos-overlay

  • Disable selinux in the global profile for all boards.
  • Upgrade mesa-panfrost to latest 22.3.3 for Mali valhall GPU support.
  • Add USE flag to skip cr50 FW upgrades.
  • Bump ebuilds for divergence in other components (kernel, minigbm).

src/platform/minigbm

  • Add patch to allow minigbm to work with panfrost BO ioctls. This works but needs significant changes before being sent upstream.

src/platform/initramfs

  • Contains a backport of a commit which got upstreamed in this CL.
  • This fork can be removed when upgrading to a newer ChromiumOS version containing the above commit.

src/overlays

  • Added fix for broken upstream chipset-mt8183 virtual/opengles panfrost dependencies.
  • Panfrost added as a graphics alternative for all Mediatek chipsets.
  • Removed Mali G-57 empty job workaround firmware which is not required for upstream graphics.
  • Instructed mt8183/8192 builds to use upstream kernel.
  • Instructed mt8195 builds to use linux-next kernel / Mediatek Integration branch (see above).
Last modified April 25, 2023