commit | 314bf41e855c835bc9376b2bce59247aa850085b | [log] [tgz] |
---|---|---|
author | Lucas Berthou <berlu@google.com> | Wed Nov 24 16:29:09 2021 |
committer | Commit Bot <commit-bot@chromium.org> | Tue Nov 30 08:33:05 2021 |
tree | cce65ecd08dc77f577fb3ca3214cf00135cde379 | |
parent | 7dad2c73ce65d965d60b519994b75b3d861e8191 [diff] |
Avoid crashing on key press by adding stub for get_extended_keyboard Croscomp was segfaulting on OOBE splashscreen on volteer due to incorectly processed "ack_key" request in zcr_keyboard_extension_v1. This change still doesn't process the request properly and only logs it, but it circumvent the segfault. Change-Id: Ib2a7e3688189a291d13f2717cfefb3c8138528ea Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/croscomp/+/3299537 Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org> Commit-Queue: Kristian H. Kristensen <hoegsberg@chromium.org> Tested-by: Kristian H. Kristensen <hoegsberg@chromium.org>
Compositor for ChromeOS
Build using portage
$ mkdir ~/trunk/src/third_party/chromiumos-overlay/chromeos-base/croscomp $ ln -s ../../../../platform/croscomp/croscomp-9999.ebuild \ ~/trunk/src/third_party/chromiumos-overlay/chromeos-base/croscomp $ emerge-$BOARD croscomp
Building in the CrOS SDK
$ export BOARD=strongbad $ setup_board --board=$BOARD
C deps:
$ emerge-$BOARD libxkbcommon wayland pixman libdrm mtdev wayland-protocols cairo mesa-freedreno minigbm lcms pango opengles-headers
Rust deps:
$ emerge-$BOARD bitflags bindgen libloading nix smallvec xml-rs downcast-rs parking_lot_core lock_api owning_ref parking_lot scoped-tls pkg-config $ ./do-build.sh $ cros deploy $DUT mtdev
You may need to specify which mtdev to deploy
$ cros deploy $DUT sys-libs/mtdev
If croscomp doesn't run smoothly you can get more logs with: $ export WAYLAND_DEBUG=1 RUST_BACKTRACE=1 RUST_LOG=debug
Croscomp may be missing libinput that may require libevdev
$ cros deploy $DUT dev-libs/libevdev $ cros deploy $DUT libinput
Using the CLs from
https://chromium-review.googlesource.com/c/chromium/src/+/3272706,
build and deploy chrome to the device. You need
target_os = ["chromeos"] ozone_platform_wayland = "true" ozone_platform = "wayland" use_wayland_egl = "false" use_wayland_gbm = "true"
in the gn args and then
$ ninja -C out_$BOARD/Relase chrome
followed by
$ deploy_chrome --build-dir=out_$BOARD/Release --device=$DUT --nostartui
Make sure both ui and frecon are not running, then start croscomp remotely on the device and use scripts/start-chrome.sh to start the chrome login screen on croscomp.