| // Copyright 2021 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include <lib/ddk/device.h> |
| #include <lib/ddk/driver.h> |
| #include <zircon/errors.h> |
| #include <zircon/types.h> |
| |
| #include "src/iwlwifi/platform/iwlwifi-bind.h" |
| #include "src/iwlwifi/platform/pcie-device.h" |
| |
| // Currently the Intel wlan driver only supports PCIe. When we add support for other forms of |
| // interfaces, we can mux all of that through this file using build time config options. |
| static zx_status_t pci_bus_bind(void* ctx, zx_device_t* parent) { |
| return wlan::iwlwifi::PcieDevice::Create(parent); |
| } |
| |
| static constexpr zx_driver_ops_t pci_driver_ops = []() { |
| zx_driver_ops_t ops = {}; |
| ops.version = DRIVER_OPS_VERSION; |
| ops.bind = pci_bus_bind; |
| return ops; |
| }(); |
| |
| ZIRCON_DRIVER(iwlwifi_pci, pci_driver_ops, "zircon", "0.1"); |