Clone this repo:

Branches

  1. 07259be disable builds and uploads by Chase Latta · 1 year, 3 months ago main
  2. a5fd61c [scripts] Delete obsolete scripts by Anthony Fandrianto · 1 year, 10 months ago
  3. 2509116 [build] Add top-level :infra target by Anthony Fandrianto · 1 year, 10 months ago
  4. 3b40317 [infra] Roll fuchsia-infra-bazel-rules submodule by Anthony Fandrianto · 1 year, 10 months ago
  5. fec46fd [roll] Update submodules manually by global-integration-roller · 1 year, 10 months ago

Pixelbook Go Backlight driver

This repository contains instructions and source code to build, package and run the Fuchsia backlight driver that is used in the workstation_eng.chromebook-x64-dfv2 product.

Requirements

  1. Make sure this repository has the required submodules:

    git submodule update --recursive --init
    
  2. Run the bootstrap script that downloads the appropriate Bazel binary:

    scripts/bootstrap.sh
    
  3. Ensure that there are Fuchsia SSH keys in your host machine. You will need them for running the Fuchsia emulator.

     [[ -f "${HOME}/.ssh/fuchsia_ed25519" ]] || ssh-keygen -P "" -t ed25519 -f "${HOME}/.ssh/fuchsia_ed25519" -C "${USER}@$(hostname -f) Shared SSH Key for Fuchsia"
     [[ -f "${HOME}/.ssh/fuchsia_authorized_keys" ]] || ssh-keygen -y -f "${HOME}/.ssh/fuchsia_ed25519" > "${HOME}/.ssh/fuchsia_authorized_keys"
    

Build, run and test the samples

The repository is ready to build the samples.

Note: in order to use an SDK produced by a local Fuchsia platform tree, you can set an environment variable named LOCAL_FUCHSIA_PLATFORM_BUILD as described in https://fuchsia.googlesource.com/sdk-integration/+/refs/heads/main/using_local_sdk.md

  1. Fetch the system images

    tools/ffx product-bundle get workstation_eng.chromebook-x64-dfv2 --repository workstation
    
  2. Prepare and connect the Pixelbook Go, by flashing and/or paving it (not covered here), and connect using Ethernet.

  3. The product bundle comes with on-demand packages in a separate repository.

    Use the following command to register it with the device:

    tools/ffx target repository register -r workstation --alias fuchsia.com
    
  4. Update (OTA) the device to the version of the SDK:

    tools/ffx target update check-now --monitor
    
  5. (optional) watch the device log in a separate window

    tools/ffx log
    
  6. Load the driver

    Now you are ready to register the driver.

    First, let's confirm that the driver is not loaded:

    tools/ffx driver list | grep backlight
    

    The command above should not return any driver because it has not been registered.

    Now register the driver:

    tools/bazel run --config=fuchsia_x64 driver:pkg.component
    

    The driver now should show in the list of loaded drivers:

    tools/ffx driver list | grep backlight
    fuchsia-pkg://bazel.pkg.component/backlight_driver#meta/backlight_driver.cm