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.

Board Kernels shipped in image Kernels tested by KernelCI (replacing image kernels during boot)
arcada default stable:linux-6.1.y
stable:linux-6.6.y
asurada v6.6.x
+ panfrost
stable:linux-6.1.y
stable:linux-6.6.y
brya default stable:linux-6.1.y
stable:linux-6.6.y
cherry v6.6.x
+ 3 display patches
+ panfrost
stable:linux-6.6.y
coral default stable:linux-6.1.y
stable:linux-6.6.y
corsola linux-next 20231106
+ mtk HW enablement patches
+ panfrost
dedede default stable:linux-6.1.y
stable:linux-6.6.y
grunt default stable:linux-6.1.y
stable:linux-6.6.y
guybrush default stable:linux-6.1.y
stable:linux-6.6.y
hatch default stable:linux-6.1.y
stable:linux-6.6.y
jacuzzi v6.6.x + panfrost stable:linux-6.1.y
stable:linux-6.6.y
nami default stable:linux-6.1.y
stable:linux-6.6.y
octopus chromeos-5.15 stable:linux-6.1.y
stable:linux-6.6.y
puff default stable:linux-6.1.y
stable:linux-6.6.y
rammus default stable:linux-6.1.y
stable:linux-6.6.y
sarien default stable:linux-6.1.y
stable:linux-6.6.y
trogdor default stable:linux-6.1.y
stable:linux-6.6.y
volteer default stable:linux-6.1.y
stable:linux-6.6.y
zork default stable: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.

Board Kernels shipped in image Kernels tested by KernelCI (replacing image kernels during boot)
asurada v6.2.7
+ display patches
+ panfrost
stable:linux-6.1.y
brya default stable:linux-6.1.y
cherry linux-next 20230203
+ mtk HW enablement patches
+ panfrost
coral default stable:linux-6.1.y
dedede default stable:linux-6.1.y
grunt chromeos-5_10 stable:linux-6.1.y
guybrush default stable:linux-6.1.y
hatch default stable:linux-6.1.y
jacuzzi v6.2.7
+ panfrost
stable:linux-6.1.y
next-integration-branch (for-kernelci)
nami default stable:linux-6.1.y
octopus default stable:linux-6.1.y
puff default stable:linux-6.1.y
rammus default stable:linux-6.1.y
sarien default stable:linux-6.1.y
trogdor default stable:linux-6.1.y
volteer default stable:linux-6.1.y
zork default stable: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.

Board Kernels shipped in image Kernels tested by KernelCI (replacing image kernels during boot)
asurada v6.2.7
+ display patches
+ panfrost
stable:linux-6.1.y
cherry linux-next 20230203
+ mtk HW enablement patches
+ panfrost
coral default stable:linux-6.1.y
dedede default stable:linux-6.1.y
grunt chromeos-5_10 stable:linux-6.1.y
hatch default stable:linux-6.1.y
jacuzzi v6.2.7
+ panfrost
stable:linux-6.1.y
next-integration-branch (for-kernelci)
nami default stable:linux-6.1.y
octopus default stable:linux-6.1.y
rammus default stable:linux-6.1.y
sarien default stable:linux-6.1.y
trogdor default stable:linux-6.1.y
volteer default stable:linux-6.1.y
zork default stable: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.

Board Kernels shipped in image Kernels tested by KernelCI (replacing image kernels during boot)
amd64-generic chromeos-5_15 stable:linux-6.1.y
asurada v6.2.7
+ display patches
+ panfrost
stable:linux-6.1.y
cherry linux-next 20230203
+ mtk HW enablement patches
+ panfrost
coral chromeos-5_10 stable:linux-6.1.y
dedede chromeos-5_4 stable:linux-6.1.y
grunt chromeos-5_10 stable:linux-6.1.y
hatch chromeos-4_19 stable:linux-6.1.y
jacuzzi v6.2.7
+ panfrost
stable:linux-6.1.y
next-integration-branch (for-kernelci)
nami chromeos-4_4 stable:linux-6.1.y
octopus chromeos-4_14 stable:linux-6.1.y
rammus chromeos-4_4 stable:linux-6.1.y
sarien chromeos-4_19 stable:linux-6.1.y
trogdor chromeos-5_4 stable:linux-6.1.y
volteer chromeos-5_4 stable:linux-6.1.y
zork chromeos-5_4 stable: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