# Copyright 2019 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.

import("//build/config/fuchsia/rules.gni")
import("config.gni")

bind_rules("ot_radio_bind") {
  rules = "ot_radio.bind"
  output = "ot_radio_bind.h"
  tests = "bind_tests.json"
  deps = [ "//src/devices/bind/fuchsia.platform" ]
}

group("tests") {
  testonly = true
  deps = [ ":ot_radio_bind_test" ]
}

# Labels for board specific driver
# Should be pointed to by individual board file
ot_radio_driver("sherlock") {
  board = "sherlock"
  firmware_type = "release"
  firmware_config = "rcp"
}

ot_radio_driver("sherlock-mfg") {
  board = "sherlock"
  firmware_type = "development"
  firmware_config = "ncp"
}

ot_radio_driver("luis") {
  board = "luis"
  firmware_type = "release"
  firmware_config = "rcp"
}

ot_radio_driver("luis-mfg") {
  board = "luis"
  firmware_type = "development"
  firmware_config = "ncp"
}
