Skip to content

Add Google kano (Mr Chromebox) support - First full Chromebook port!#2133

Open
cwiggs wants to merge 35 commits into
linuxboot:masterfrom
cwiggs:google_kano
Open

Add Google kano (Mr Chromebox) support - First full Chromebook port!#2133
cwiggs wants to merge 35 commits into
linuxboot:masterfrom
cwiggs:google_kano

Conversation

@cwiggs

@cwiggs cwiggs commented Jun 24, 2026

Copy link
Copy Markdown

This pull request adds support for the Acer Chromebook Spin 714 ("kano") board based on the MrChromebox coreboot fork (26.03), including CI integration, configuration files, and documentation updates. It also introduces a patch for musl compatibility in the MrChromebox fork, adds a new Linux kernel version (6.6.30), and documents TPM2 CR50 command support. The most important changes are grouped below:

Kano (Acer Chromebook Spin 714) board support:

  • Adds boards/kano/kano.config for Heads and Linux build configuration for the kano board.
  • Adds config/coreboot-kano.config_defconfig as a defconfig backup for kano, documenting non-default coreboot options.
  • Integrates kano into CircleCI: adds coreboot-mrchromebox as a seed, defines the kano build job, and documents its workflow. [1] [2] [3]
  • Documents kano's handling of the RTC century byte and why USE_PC_CMOS_ALTCENTURY must be unset for this board. [1] [2] [3]

MrChromebox coreboot fork integration:

  • Adds the MrChromebox coreboot fork (26.03) as a supported module in modules/coreboot, with commit hash pinning and submodule handling notes. [1] [2]
  • Documents and implements post-build application of the ME HAP bit for MrChromebox-based boards (e.g., kano) via ifdtool. [1] [2]

Build system and kernel updates:

  • Adds Linux kernel version 6.6.30 support for use by kano and other boards. [1] [2]
  • Adds a musl compatibility patch for MrChromebox coreboot's cbmem utility.

Documentation improvements:

  • Documents how to clone the repository with full history and repair shallow clones for reproducible builds.
  • Adds a section on CR50 TPM command limitations and Heads TPM2 command compatibility.
  • Expands documentation on defconfig backups for Chromebook boards and Heads-common coreboot options. [1] [2] [3]

Minor adjustments:

  • Updates the list of boards with specific coreboot options and clarifies configuration for Purism and QEMU boards. [1] [2]

These changes collectively enable official Heads support for the Acer Chromebook Spin 714 (kano), ensure compatibility with the MrChromebox fork, and improve build reproducibility and documentation for new contributors.

(copilot generalized pr summary, asked by @tlaurion)


TODO before merge

  • Create Chromebook section with notes of this PR
  • Go through/modify porting guide checklist
    • Go through/modify testing checklist
      • Successful external flash link to circleci: https://X.Y.Z. from commit X.Y.Z. using external programmer model X.Y.Z. on X.Y.Z. Voltage mode
      • Boots successfully after the flashing:
      • Setting clock prompt on first reboot: ok if triggered correctly after initial flashing and CMOS battery disconnected
      • Clean boot detected (no keyring, nothing installed on disk): usb boot proposed and followed
      • Boots on usb
      • OS X.Y.Z. install and reboot
      • Heads functionality- no pubkey detected, but OS detected -> OEM-Factory-reset proposed. Done with X.Y.Z. hardwarekey e.g. nk3
      • On reboot after re-ownership: generate new HOTP/TOTP
      • wifi works based on OS X.Y.Z.
      • PR0
        • flashprog -p internal (not locked)
        • lock_chip (locks the platform with PR0, if PR0 patch applied in fork or under patches/coreboot-X.Y.Z. and coreboot config contain proper preparation of the platform)
        • flashprog -p internal (reports locked)

Additional questions:

Comment thread modules/coreboot Outdated
Comment thread modules/coreboot Outdated

@tlaurion tlaurion left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

first review as I was there and saw work on this PR :)

@tlaurion

Copy link
Copy Markdown
Collaborator

I suggest you tart a thread under Matrix Heads channel. You must rebase the old PR on linuxboot/heads master, an dthen adapt coreboot config to your board. Following https://osresearch.net/Porting/ @cwiggs otherwise your experience might be really frustrating.

@cwiggs

cwiggs commented Jun 24, 2026

Copy link
Copy Markdown
Author

I suggest you tart a thread under Matrix Heads channel. You must rebase the old PR on linuxboot/heads master, an dthen adapt coreboot config to your board. Following https://osresearch.net/Porting/ @cwiggs otherwise your experience might be really frustrating.

Started a thread here: https://matrix.to/#/!eMLMv62wAMCW1V-ufL_bJ_JDngDhrpSOSEQBLzX8aTg/$eepAush4kVo93Zxqtw59P6NX9g6AG7FZFplc2Fu6tyo?via=matrix.org&via=tchncs.de&via=unredacted.org

@tlaurion

Copy link
Copy Markdown
Collaborator

@cwiggs I saw you left the room?

Comment thread boards/kano/kano.config Outdated
Comment thread boards/kano/kano.config Outdated
@cwiggs

cwiggs commented Jun 24, 2026

Copy link
Copy Markdown
Author

@cwiggs I saw you left the room?

Looks like the Matrix homeserver decided to delete my account for some reason, I'll look into getting it reactivated.

@tlaurion

Copy link
Copy Markdown
Collaborator

@cwiggs check https://github.com/tlaurion/heads/tree/cwiggs-google_kano which now builds locally with blobs paths corrected and blobs submodules synced per mrchromebox gitsubmodules sync override in modules/coreboot

@cwiggs

cwiggs commented Jun 26, 2026

Copy link
Copy Markdown
Author

@cwiggs check https://github.com/tlaurion/heads/tree/cwiggs-google_kano which now builds locally with blobs paths corrected and blobs submodules synced per mrchromebox gitsubmodules sync override in modules/coreboot

Okay, great, should I rebase this branch off that one then?

@tlaurion

tlaurion commented Jun 26, 2026

Copy link
Copy Markdown
Collaborator

@cwiggs check https://github.com/tlaurion/heads/tree/cwiggs-google_kano which now builds locally with blobs paths corrected and blobs submodules synced per mrchromebox gitsubmodules sync override in modules/coreboot

Okay, great, should I rebase this branch off that one then?

Absolutely. It builds from CI. I pushed progress forward since the last base (coreboot 4.22) was old and not trivial to adapt. Let me know how the testing goes. Feel free to cherry pick all commits or if you agree i can push the changes here but that would make us both co-authors of the port.

CircleCI builds at https://app.circleci.com/pipelines/github/tlaurion/heads/4040/workflows/d7699b2f-feca-423f-b0f5-187ebf94e886

@tlaurion

Copy link
Copy Markdown
Collaborator

@cwiggs check https://github.com/tlaurion/heads/tree/cwiggs-google_kano which now builds locally with blobs paths corrected and blobs submodules synced per mrchromebox gitsubmodules sync override in modules/coreboot

Okay, great, should I rebase this branch off that one then?

Absolutely. It builds from CI. I pushed progress forward since the last base (coreboot 4.22) was old and not trivial to adapt. Let me know how the testing goes. Feel free to cherry pick all commits or if you agree i can push the changes here but that would make us both co-authors of the port.

CircleCI builds at https://app.circleci.com/pipelines/github/tlaurion/heads/4040/workflows/d7699b2f-feca-423f-b0f5-187ebf94e886

https://output.circle-artifacts.com/output/job/6e1574dc-9faa-487d-8bfe-1b108383a89a/artifacts/0/build/x86/kano/heads-kano-20260626-131058-cwiggs-google_kano_-v0.2.1-3072-gb54796f.rom

@cwiggs

cwiggs commented Jun 27, 2026

Copy link
Copy Markdown
Author

@cwiggs check https://github.com/tlaurion/heads/tree/cwiggs-google_kano which now builds locally with blobs paths corrected and blobs submodules synced per mrchromebox gitsubmodules sync override in modules/coreboot

Okay, great, should I rebase this branch off that one then?

Absolutely. It builds from CI. I pushed progress forward since the last base (coreboot 4.22) was old and not trivial to adapt. Let me know how the testing goes. Feel free to cherry pick all commits or if you agree i can push the changes here but that would make us both co-authors of the port.
CircleCI builds at https://app.circleci.com/pipelines/github/tlaurion/heads/4040/workflows/d7699b2f-feca-423f-b0f5-187ebf94e886

https://output.circle-artifacts.com/output/job/6e1574dc-9faa-487d-8bfe-1b108383a89a/artifacts/0/build/x86/kano/heads-kano-20260626-131058-cwiggs-google_kano_-v0.2.1-3072-gb54796f.rom

Thanks! I got it downloaded. The suzyq cable should arrive this weekend or Monday and I'll give it a try. I also rebased off your branch here.

@tlaurion

tlaurion commented Jun 27, 2026

Copy link
Copy Markdown
Collaborator

@cwiggs check https://github.com/tlaurion/heads/tree/cwiggs-google_kano which now builds locally with blobs paths corrected and blobs submodules synced per mrchromebox gitsubmodules sync override in modules/coreboot

Okay, great, should I rebase this branch off that one then?

Absolutely. It builds from CI. I pushed progress forward since the last base (coreboot 4.22) was old and not trivial to adapt. Let me know how the testing goes. Feel free to cherry pick all commits or if you agree i can push the changes here but that would make us both co-authors of the port.
CircleCI builds at https://app.circleci.com/pipelines/github/tlaurion/heads/4040/workflows/d7699b2f-feca-423f-b0f5-187ebf94e886

https://output.circle-artifacts.com/output/job/6e1574dc-9faa-487d-8bfe-1b108383a89a/artifacts/0/build/x86/kano/heads-kano-20260626-131058-cwiggs-google_kano_-v0.2.1-3072-gb54796f.rom

Thanks! I got it downloaded. The suzyq cable should arrive this weekend or Monday and I'll give it a try. I also rebased off your branch here.

@cwiggs : This branch doesn't include all the needed changes, nor CircleCI config.
I cleaned up the commit trail in my branch at https://github.com/tlaurion/heads/tree/cwiggs-google_kano
(There is 19 commits atop origin/master there; not 9 as here)

I can push here too, if needed. Let me know.

@cwiggs

cwiggs commented Jul 4, 2026

Copy link
Copy Markdown
Author

@cwiggs check https://github.com/tlaurion/heads/tree/cwiggs-google_kano which now builds locally with blobs paths corrected and blobs submodules synced per mrchromebox gitsubmodules sync override in modules/coreboot

Okay, great, should I rebase this branch off that one then?

Absolutely. It builds from CI. I pushed progress forward since the last base (coreboot 4.22) was old and not trivial to adapt. Let me know how the testing goes. Feel free to cherry pick all commits or if you agree i can push the changes here but that would make us both co-authors of the port.
CircleCI builds at https://app.circleci.com/pipelines/github/tlaurion/heads/4040/workflows/d7699b2f-feca-423f-b0f5-187ebf94e886

https://output.circle-artifacts.com/output/job/6e1574dc-9faa-487d-8bfe-1b108383a89a/artifacts/0/build/x86/kano/heads-kano-20260626-131058-cwiggs-google_kano_-v0.2.1-3072-gb54796f.rom

Thanks! I got it downloaded. The suzyq cable should arrive this weekend or Monday and I'll give it a try. I also rebased off your branch here.

@cwiggs : This branch doesn't include all the needed changes, nor CircleCI config. I cleaned up the commit trail in my branch at https://github.com/tlaurion/heads/tree/cwiggs-google_kano (There is 19 commits atop origin/master there; not 9 as here)

I can push here too, if needed. Let me know.

I just rebased off your branch, let me know if it looks good from that point of view. Looks like I also will need to rebase off main.

As far as flashing goes: I got the Suzy-Q "cable" (It's really just a small board with a male and female usb-c, you then use your own usb-c cable). And I have some good news and some bad news (I think?). I was able to get the suzy-q cable to read the rom, but verifying the backup seems to fail.

I've been using this mrchromebox guide to get the suzy-q device working with flashrom and then this heads wiki as well. Below are some notes I put together while I was attempting the flash:

Use Suzy-Q cable for flashing

  1. Connect the USB-C end of the Suzy-Q cable to the CCD port on your ChromeOS device
    (usually left USB-C port) and the USB-A end to your Linux device
    Verify the cable is properly connected:

    • ls /dev/ttyUSB*
    • This command should return 3 items: ttyUSB0, ttyUSB1, and ttyUSB2.
    • If not, then your cable is connected to the wrong port or is upside down.
      Adjust and repeat command until output is as expected.
  2. Set the CCD state to open:

    • echo "ccd open" | sudo tee -a /dev/ttyUSB0 > /dev/null
  3. Test Connection and detect chip. raiden_debug_spi used from mrchromebox doc

    • sudo flashrom -p raiden_debug_spi
      ╚═ $ sudo flashrom -p raiden_debug_spi
      flashrom v1.6.0 on Linux 7.0.10+deb14-amd64 (x86_64)
      flashrom is free software, get the source code at https://flashrom.org
      
      FISK: (null)
      Raiden target: 0,0
      Raiden: Target SPI bridge is disabled (is WP enabled?)
      Raiden: Error configuring protocol
          protocol       = 2
          status         = 0x00005
      Error: Programmer initialization failed.
      
    • sudo flashrom -p raiden_debug_spi:target=AP casued a reboot.
       ╚═ $ sudo flashrom -p raiden_debug_spi:target=AP
      flashrom v1.6.0 on Linux 7.0.10+deb14-amd64 (x86_64)
      flashrom is free software, get the source code at https://flashrom.org
      
      FISK: AP
      Raiden target: 2,0
      Found Winbond flash chip "W25Q256JV_M" (32768 kB, SPI) on raiden_debug_spi.
      No operations were specified.
      
  4. Create backup, and verify.

    • sudo flashrom -p raiden_debug_spi:target=AP -r badflash.rom
    • hexdump -C badflash.rom | head -20
        00000000  11 00 00 9c 90 02 00 d6  00 00 00 05 ff ff ff ff  |................|
        00000010  5a a5 f0 0f 03 00 04 00  08 02 10 46 b0 01 14 00  |Z..........F....|
        00000020  00 00 00 00 ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
        00000030  f6 30 30 09 21 42 60 ad  b7 b9 c4 c7 ff ff ff ff  |.00.!B`.........|
        00000040  00 00 00 00 00 05 ff 1f  01 00 ff 04 ff 7f 00 00  |................|
        00000050  ff 7f 00 00 ff 7f 00 00  ff 7f 00 00 ff 7f 00 00  |................|
        *
        00000080  00 07 20 00 00 05 40 00  00 00 00 00 00 00 00 00  |.. ...@.........|
        00000090  00 00 00 00 00 00 00 00  ff ff ff ff ff ff ff ff  |................|
        000000a0  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
        *
        00000100  00 00 00 00 01 00 00 00  09 00 04 00 00 ce 3d 03  |..............=.|
        00000110  7f 00 38 00 00 00 00 00  10 00 00 00 02 00 20 60  |..8........... `|
        00000120  08 30 03 48 00 00 00 00  01 00 7f 0f 82 0b c0 04  |.0.H............|
        00000130  00 00 00 00 00 00 0e 00  22 42 22 42 22 22 42 22  |........"B"B""B"|
        00000140  00 00 00 00 00 00 00 00  00 00 ff 00 60 00 80 c8  |............`...|
        00000150  45 86 00 36 01 00 a6 81  20 0e 58 00 01 00 40 00  |E..6.... .X...@.|
        00000160  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
        00000170  00 1c 00 00 00 00 00 00  54 b3 04 a0 30 00 00 41  |........T...0..A|
        00000180  8f 03 08 c6 00 01 00 00  00 00 00 00 00 00 00 00  |................|
      
    • sudo flashrom -p raiden_debug_spi:target=AP --verify badflash.rom
        flashrom v1.6.0 on Linux 7.0.10+deb14-amd64 (x86_64)
        flashrom is free software, get the source code at https://flashrom.org
      
        FISK: AP
        Raiden target: 2,0
        Found Winbond flash chip "W25Q256JV_M" (32768 kB, SPI) on raiden_debug_spi.
        Verifying flash... FAILED at 0x01bbeadb! Expected=0x94, Found=0xb4, failed byte count from 0x00000000-0x01ffffff: 0x3f
      
  5. Created a backup and verify it using heads wiki guide.

    • sudo flashrom -p raiden_debug_spi:target=AP --read backup.bin --chip "W25Q256JV_M"
    • sudo flashrom -p raiden_debug_spi:target=AP --verify backup.bin --chip "W25Q256JV_M"
      ╚═ $ sudo flashrom -p raiden_debug_spi:target=AP --verify backup.bin --chip "W25Q256JV_M"
      flashrom v1.6.0 on Linux 7.0.10+deb14-amd64 (x86_64)
      flashrom is free software, get the source code at https://flashrom.org
      
      FISK: AP
      Raiden target: 2,0
      Found Winbond flash chip "W25Q256JV_M" (32768 kB, SPI) on raiden_debug_spi.
      Verifying flash... FAILED at 0x01bc9254! Expected=0xb7, Found=0xb8, failed byte count from 0x00000000-0x01ffffff: 0x3e
      

Questions:

  1. When I run sudo flashrom -p raiden_debug_spi I'm getting a "Error: Programmer initialization failed" and "Target SPI bridge is disabled (is WP enabled?)". The mrchromebox guide does talk about disabling write-protection, but it seems to only be possible to do via a tool in ChromeOS (gsctool), or by disconnecting the laptops battery. Seems very likely write-protection is still on.
  2. Looks like I was able to create a backup, but then when I verify it I get: "Verifying flash... FAILED at 0x01bc9254! Expected=0xb7, Found=0xb8, failed byte count from 0x00000000-0x01ffffff: 0x3e" Why is it not working?

Anyway I think next steps are to disconnect the battery and try these flashrom commands again. I don't want to proceed until the verify step works without error.

@cwiggs

cwiggs commented Jul 4, 2026

Copy link
Copy Markdown
Author

Well I disconnected the battery and am getting the same response from flashrom. Should I just continue with flashing heads?

Here are my notes:

  1. Disconnect Battery to disable write-protection.
  • Remove The 9 screws.
image * Use a smudger to take the back cover off. * Disconnect battery cable. image
  • Put laptop back together.
  1. Disable write-protection. mrchromebox guide
  • Plug laptop into power.
  • Plug in suzy-q cable.
  • echo "wp false" > /dev/ttyUSB0
  • echo "wp false atboot" > /dev/ttyUSB0
  • echo "ccd reset factory" > /dev/ttyUSB0
  1. Tried the same flashrom commands to backup and verify above and got the same result of "Error: Programmer initialization failed" and "Verifying flash... FAILED at 0x0003e1c0! Expected=0x28, Found=0x68, failed byte count from 0x00000000-0x01ffffff: 0xe99" when verifying.

mdrobnak and others added 7 commits July 4, 2026 18:22
Signed-off-by: Matthew Drobnak <matthew@drobnak.com>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Matthew Drobnak <matthew@drobnak.com>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Chris Wiggins <chris@cwiggs.com>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
…t/linux helpers to modify and save in oldconfig

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
…-musl-compat.patch: fix build error against musl

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
…place to put in defconfig to remove irrelevant omnigul things

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
@cwiggs cwiggs requested a review from tlaurion July 10, 2026 05:20
@tlaurion

tlaurion commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator

Flashed the most recent build (https://output.circle-artifacts.com/output/job/5f5b720f-8d71-4878-91df-a20af7beac2f/artifacts/0/build/x86/kano/heads-kano-202607092012-v0.2.1-3123-g852dc8e.zip)

flashprog unknown on Linux 6.6.30-Heads (x86_64)
flashprog is free software, get the source code at https://flashprog.org

Calibrating delay loop... OK.
coreboot table found at 0x76883000.
Found chipset "Intel Alder Lake-P".
Enabling flash write... OK.
Found Programmer flash chip "Opaque flash chip" (32768 kB, Programmer-specific) on internal.
No operations were specified.

Looks good!

@cwiggs Now will be time to checklist things, i will update OP with checklist (to improve docs as well.
Todo still is open a pr against heads-wiki with what is absolutely necessary to flash chromebooks. Will also rename PR to make it clear that this is first chromebook port :)

Curious since you are a daily NixOS user, and that installation docs under https://osresearch.net are.... hmm. less then optimal to guide users into what is different requirements then UEFI, even though latest #2130 helped a lot fb+iso support, unless bugs found, most if not all linux distributions.

You didn't need #2155 ?

@tlaurion tlaurion changed the title Add Google kano (Mr Chromebox) support Add Google kano (Mr Chromebox) support - First full Chromebook port! Jul 10, 2026
@tlaurion tlaurion marked this pull request as draft July 10, 2026 20:56
@tlaurion tlaurion marked this pull request as ready for review July 10, 2026 20:56
Copilot AI review requested due to automatic review settings July 10, 2026 20:56

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds first-class support for the Acer Chromebook Spin 714 (“kano”) by introducing a new board configuration, pinning/building against the MrChromebox coreboot fork (coreboot 26.03–based), and extending CI + documentation to support the new Chromebook workflow.

Changes:

  • Added new kano board configs (Heads board config, coreboot configs/defconfig backup, Linux 6.6.30 config) and registered Linux 6.6.30 in the build system.
  • Added MrChromebox coreboot fork as a buildable coreboot module, including a musl build fix for cbmem and optional post-build ME HAP bit application.
  • Updated CircleCI workflow and documentation to cover the new seed/job and Chromebook-specific configuration guidance; improved TPM reset behavior for CR50 limitations.

Reviewed changes

Copilot reviewed 15 out of 18 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
README.md Documents cloning with full history to support tag-based artifact naming.
.circleci/config.yml Adds a kano seed job for the coreboot-mrchromebox fork and updates seed documentation comments.
boards/kano/kano.config Introduces Heads board configuration for the Kano Chromebook target.
config/coreboot-kano.config Adds generated coreboot configuration for Kano (MrChromebox fork).
config/coreboot-kano.config_defconfig Adds defconfig-format backup to make Kano’s non-default coreboot options easy to review.
config/linux-kano.config Adds generated Linux 6.6.30 kernel configuration for Kano.
modules/coreboot Adds coreboot-mrchromebox fork support and optional post-build ifdtool HAP application; clarifies blob fetching behavior.
modules/linux Registers Linux kernel 6.6.30 (version + hash) as a supported build option.
patches/coreboot-mrchromebox/0001-util-cbmem-Add-endian.h-include-for-musl-compat.patch Fixes musl build issues in MrChromebox fork’s cbmem by adding <endian.h>.
patches/coreboot-mrchromebox/0002-soc-intel-lockdown-Allow-locking-down-SPI-and-LPC-in.patch Adds Intel lockdown-in-SMM support patch adapted to MrChromebox fork.
patches/linux-6.6.30/0001-fake-acpi.patch Adds Linux patch used by Heads’ kernel packaging for this version.
patches/linux-6.6.30/0002-nmi-squelch.patch Adds Linux patch used by Heads’ kernel packaging for this version.
patches/linux-6.6.30/0010-winterfell-ahci.patch Adds Linux patch used by Heads’ kernel packaging for this version.
initrd/bin/tpmr.sh Makes TPM2 reset tolerate CR50’s lack of ClearControl by attempting TPM2_Clear anyway.
bin/validate_cbfs_ifd_fit.sh Fixes integer comparison by converting a hex constant into decimal before -gt tests.
doc/circleci.md Documents the new kano seed/job and its MrChromebox fork basis.
doc/variation-to-defconfig.md Adds Chromebook defconfig backup guidance and Kano-specific notes; expands examples.
doc/tpm.md Documents CR50 command limitations and Heads’ TPM2 command usage compatibility.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread boards/kano/kano.config Outdated
…pace

Copilot review: fix 'a Acer' -> 'an Acer', 'Wi-FI' -> 'Wi-Fi', and remove trailing comma/spaces on line 3.

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
@tlaurion

Copy link
Copy Markdown
Collaborator

Will push here

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 15 out of 18 changed files in this pull request and generated 3 comments.

Comment thread patches/linux-6.6.30/0001-fake-acpi.patch
Comment thread patches/linux-6.6.30/0002-nmi-squelch.patch
Comment thread patches/linux-6.6.30/0010-winterfell-ahci.patch
@tlaurion

tlaurion commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator

For posterity of this port, i'm porting patches to 26.06 so buildstack will be shareable and patches upstreameable , more commits coming

@tlaurion tlaurion force-pushed the google_kano branch 2 times, most recently from 3ecfc2b to 7770fe8 Compare July 10, 2026 22:03
@tlaurion

Copy link
Copy Markdown
Collaborator

@cwiggs check todo list of OP :) test rom from CircleCI on latest commit since coreboot's mrchromebox 26.06 based.

@MrChromebox any comment before merge?

@tlaurion

tlaurion commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator

Asked Matrix's coreboot channel; for review of this pr

@tlaurion

Copy link
Copy Markdown
Collaborator

Asked Matrix's coreboot channel; for review of this pr

mrchromebox said if not uefi: no use of using his fork. More commit upcoming

@cwiggs

cwiggs commented Jul 10, 2026

Copy link
Copy Markdown
Author

Flashed the most recent build (https://output.circle-artifacts.com/output/job/5f5b720f-8d71-4878-91df-a20af7beac2f/artifacts/0/build/x86/kano/heads-kano-202607092012-v0.2.1-3123-g852dc8e.zip)

flashprog unknown on Linux 6.6.30-Heads (x86_64)
flashprog is free software, get the source code at https://flashprog.org

Calibrating delay loop... OK.
coreboot table found at 0x76883000.
Found chipset "Intel Alder Lake-P".
Enabling flash write... OK.
Found Programmer flash chip "Opaque flash chip" (32768 kB, Programmer-specific) on internal.
No operations were specified.

Looks good!

@cwiggs Now will be time to checklist things, i will update OP with checklist (to improve docs as well. Todo still is open a pr against heads-wiki with what is absolutely necessary to flash chromebooks. Will also rename PR to make it clear that this is first chromebook port :)

Once CircleCI builds the Kano zip I'll flash the image and fill out the checklist.

I also have a working branch for the wiki for heads. I'll get it up as a draft/WIP and then add to it.

Curious since you are a daily NixOS user, and that installation docs under https://osresearch.net are.... hmm. less then optimal to guide users into what is different requirements then UEFI, even though latest #2130 helped a lot fb+iso support, unless bugs found, most if not all linux distributions.

You didn't need #2155 ?

I was able to get my NixOS install working in Heads with a very simple change you can see here: https://gitlab.com/cwiggs/nix/-/commit/a7419c5511b45e0fa04590788bcb8309e12825e9

I didn't need #2155 and DUK still works without issues. I can also post a tree or files in /boot if that helps.

@tlaurion tlaurion force-pushed the google_kano branch 8 times, most recently from 2e4d179 to 9a8de0b Compare July 11, 2026 00:13
Update from MrChromebox-2603.2 (f8244f2) to MrChromebox-2606.0 (ddfe385).

Config regenerated via: make BOARD=kano coreboot.save_in_oldconfig_format_in_place && make BOARD=kano coreboot.save_in_defconfig_format_backup

Address Copilot review: fix 'feautre' typo, deduplicate Adapted for MrChromebox fork bullet list, rebase smihandler.c hunk for opal_s3_smm.h include added in 26.06.

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants