commit | 4ac6a834528456cf63492b00a98378ff40600ab5 | [log] [tgz] |
---|---|---|
author | global-integration-roller <global-integration-roller@fuchsia.infra.roller.fuchsia-infra.iam.gserviceaccount.com> | Thu Oct 10 18:51:21 2024 +0000 |
committer | CQ Bot <fuchsia-internal-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu Oct 10 18:51:21 2024 +0000 |
tree | dbcc33554cba9b10bd3e39486c5b67cd237e35f0 | |
parent | 9c1d81e0635ce48d1e088bf60a46ed524db2c6af [diff] |
[roll] Roll third_party/fuchsia-infra-bazel-rules [roll] Roll fuchsia-infra-bazel-rules-ffxluciauth-cipd packages to git_revision:e041af9f0455b2275cc3f938aeb10a2f8bf01e9e fuchsia/infra/ffxluciauth/linux-amd64 new:https://chrome-infra-packages.appspot.com/p/fuchsia/infra/ffxluciauth/linux-amd64/+/git_revision:e041af9f0455b2275cc3f938aeb10a2f8bf01e9e fuchsia/infra/ffxluciauth/linux-arm64 new:https://chrome-infra-packages.appspot.com/p/fuchsia/infra/ffxluciauth/linux-arm64/+/git_revision:e041af9f0455b2275cc3f938aeb10a2f8bf01e9e fuchsia/infra/ffxluciauth/mac-amd64 new:https://chrome-infra-packages.appspot.com/p/fuchsia/infra/ffxluciauth/mac-amd64/+/git_revision:e041af9f0455b2275cc3f938aeb10a2f8bf01e9e fuchsia/infra/ffxluciauth/mac-arm64 new:https://chrome-infra-packages.appspot.com/p/fuchsia/infra/ffxluciauth/mac-arm64/+/git_revision:e041af9f0455b2275cc3f938aeb10a2f8bf01e9e From: None To: git_revision:e041af9f0455b2275cc3f938aeb10a2f8bf01e9e Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia-infra-bazel-rules/+/1135328 Original-Revision: 61e8e9f628ca1bfc01f88d20661137ea2da5ed27 Roller-URL: https://ci.chromium.org/b/8734441034098470369 CQ-Do-Not-Cancel-Tryjobs: true Change-Id: I96cca6755130fb69d68ab6884340fed76cfda4d9 Reviewed-on: https://fuchsia-review.googlesource.com/c/drivers/wlan/intel/iwlwifi/+/1135635 Commit-Queue: GI Roller <global-integration-roller@fuchsia-infra.iam.gserviceaccount.com>
This repository contains the source code to build, package and run the Intel Wifi driver for Fuchsia using the Fuchsia Bazel SDK.
The prebuilts of this driver is uploaded to CIPD at this location.
https://chrome-infra-packages.appspot.com/p/fuchsia/drivers/wlan/intel/iwlwifi
git clone https://fuchsia.googlesource.com/drivers/wlan/intel/iwlwifi --recurse-submodules
cd iwlwifi
scripts/bootstrap.sh
To prepare your development environment using NUC hardware, please follow the instruction in the below doc.
Once you have setup your environment, the Intel driver can be built using the following command.
./tools/bazel build third_party/iwlwifi/platform:iwlwifi_pkg
When finished successfully, it prints output logs similar to what's shown below:
$ ./tools/bazel build third_party/iwlwifi/platform:iwlwifi_pkg ... INFO: Elapsed time: 0.464s, Critical Path: 0.11s INFO: 11 processes: 11 internal. INFO: Build completed successfully, 11 total actions
ffx driver disable fuchsia-pkg://fuchsia.com/iwlwifi#meta/iwlwifi.cm
The command output would look something like this:
$ tools/ffx driver disable fuchsia-pkg://fuchsia.com/iwlwifi#meta/iwlwifi.cm Disabling fuchsia-pkg://fuchsia.com/iwlwifi#meta/iwlwifi.cm and restarting driver hosts with rematching enabled. Successfully restarted and rematching 1 driver hosts with the driver.
tools/bazel run third_party/iwlwifi/platform:iwlwifi_pkg.iwlwifi_component
The command output would look something like this:
$ tools/bazel run third_party/iwlwifi/platform:iwlwifi_pkg.iwlwifi_component ... Publishing packages: [PosixPath('third_party/iwlwifi/platform/iwlwifi.far')] Published 1 packages Running task: iwlwifi_pkg.iwlwifi_component.run_only (step 3/4) Registering fuchsia-pkg://bazel.iwlwifi.pkg.publish.anonymous/iwlwifi#meta/iwlwifi.cm, restarting driver hosts, and attempting to bind to unbound nodes Successfully bound: Node 'dev.sys.platform.pt.PCI0.bus.01_00.0.01_00.0', Driver 'fuchsia-pkg://bazel.iwlwifi.pkg.publish.anonymous/iwlwifi#meta/iwlwifi.cm'. Running task: iwlwifi_pkg.publish_anonymous.delete_repo (step 4/4)
$ tools/ffx driver list --loaded | grep wifi fuchsia-pkg://bazel.pkg.publish.anonymous/iwlwifi#meta/iwlwifi.cm
Notice the iwlwifi driver toward the bottom of the loaded drivers list.
$ tools/ffx component show iwlwifi.cm Moniker: /bootstrap/full-pkg-drivers:dev.sys.platform.pt.PCI0.bus.01_00.0_.pci-01_00.0-fidl URL: fuchsia-pkg://bazel.iwlwifi.pkg.publish.anonymous/iwlwifi#meta/iwlwifi.cm Environment: full-pkg-driver-env Instance ID: None Type: CML component Component State: Resolved Resolved URL: fuchsia-pkg://bazel.iwlwifi.pkg.publish.anonymous/iwlwifi#meta/iwlwifi.cm Namespace Capabilities: /svc/fuchsia.logger.LogSink /svc/fuchsia.hardware.pci.Service Exposed Capabilities: fuchsia.wlan.softmac.Service fuchsia.wlan.phyimpl.Service diagnostics Merkle root: 98384e7ced5c66b0fbf5f725abb43e9e9b57594e694f9167c032cceb4b009b80 Execution State: Running Start reason: Instance is in a single_run collection Outgoing Capabilities: diagnostics fuchsia.wlan.phyimpl.Service Runtime: Unknown
fx shell wlan-dev scan
A successful scan output would look something like this.
fuchsia~$ fx shell wlan-dev scan Warning: this tool may cause state mismatches between layers of the WLAN subsystem. It is intended for use by WLAN developers only. Please reach out to the WLAN team if your use case relies on it. Scan(ClientScanCmd { iface_id: 0, scan_type: Passive }) BSSID dBm Chan Protection Compatible SSID 8c:3b:ad:ab:91:4d -86 157V WPA2 PSK Y 60:32:b1:6a:e6:53 -72 9+ WPA2 PSK Y 62:8c:b5:39:0b:fb -85 153V WPA2 PSK Y
tools/work-on core.x64 --target fuchsia-emulator
tools/ffx emu stop --all
tools/ffx emu start --headless
tools/bazel test third_party/iwlwifi/test:iwlwifi_test_pkg
Boot your NUC in Fastboot mode (or boot it normally to run Fuchsia).
Identify your NUC’s device name, for example:
$ ffx target list NAME SERIAL TYPE STATE fuchsia-5254-0063-5e7a <unknown> Unknown Unknown
tools/work-on core.x64 --target <name_from_target_list>
Replace <name_from_target_list> with the target name (in this case, fuchsia-5254-0063-5e7a).
tools/bazel test --cache_test_results=no third_party/iwlwifi/test:iwlwifi_test_pkg
Execute the following command to run the driver tests with ASAN enabled.
tools/bazel test --features=asan --cache_test_results=no third_party/iwlwifi/test:iwlwifi_test_pkg
Once you're ready to send your changes for code review, run:
git push origin HEAD:refs/for/main
git will then print the URL of your pending CL.