blob: 88f934eff1123254e3aec7658caa3f262ae489a9 [file] [log] [blame]
# Copyright 2017 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/bazel/export_fuchsia_package_to_bazel.gni")
import("//build/bind/bind.gni")
import("//build/drivers.gni")
import("//build/packages/prebuilt_package.gni")
import("//src/graphics/lib/magma/gnbuild/magma.gni")
driver_bind_rules("msd_arm_bind") {
rules = "msd_arm.bind"
tests = "tests/bind_tests.json"
deps = [
"//sdk/fidl/fuchsia.hardware.gpu.mali:fuchsia.hardware.gpu.mali_bindlib",
"//src/devices/bind/fuchsia.arm.platform",
"//src/devices/bind/fuchsia.devicetree",
"//src/devices/bind/fuchsia.platform",
]
}
entry_deps = [
"src",
"src:parent_device_dfv2",
"//sdk/fidl/fuchsia.gpu.magma:fuchsia.gpu.magma_cpp",
"//sdk/fidl/fuchsia.hardware.gpu.mali:fuchsia.hardware.gpu.mali_cpp",
"//sdk/fidl/fuchsia.hardware.gpu.mali:fuchsia.hardware.gpu.mali_cpp",
"//sdk/lib/driver/devfs/cpp",
"//src/graphics/magma/lib/magma/platform:bus_mapper",
"//src/graphics/magma/lib/magma/platform:logger",
"//src/graphics/magma/lib/magma/platform:trace",
"//src/graphics/magma/lib/magma/platform/zircon:logger_for_dfv2",
"//src/graphics/magma/lib/magma/platform/zircon:status",
"//src/graphics/magma/lib/magma/util:macros",
"//src/graphics/magma/lib/magma_service/sys_driver",
"//zircon/system/ulib/trace",
"//zircon/system/ulib/trace-vthread",
"//zircon/system/ulib/zx",
]
source_set("msd_arm_entry") {
sources = [ "src/driver_entry_dfv2.cc" ]
deps =
entry_deps +
[ "//src/graphics/magma/lib/magma_service/sys_driver:magma_driver_base" ]
}
source_set("msd_arm_test_entry") {
testonly = true
sources = [
"src/driver_entry_dfv2.cc",
"src/driver_test_gtest.cc",
]
defines = [ "MAGMA_TEST_DRIVER=1" ]
deps = entry_deps + [
"tests/unit_tests:tests_requiring_hardware",
"//src/graphics/magma/lib/magma_service/sys_driver:magma_driver_base",
"//src/graphics/magma/lib/magma_service/test_util:platform_msd_device_helper",
"//src/graphics/magma/tests/msd_conformance_tests",
"//third_party/googletest:gtest",
]
}
fuchsia_driver("msd_arm-driver") {
output_name = "msd_arm"
deps = [
":msd_arm_entry",
"src",
]
assert_no_deps = [ "//zircon/system/ulib/trace-engine:trace-engine-static" ]
}
fuchsia_driver_component("msd_arm") {
component_name = "msd_arm"
deps = [
":msd_arm-driver",
":msd_arm_bind",
]
info = "msd_arm-info.json"
manifest = "meta/msd_arm.cml"
}
fuchsia_driver("msd_arm_test-driver") {
testonly = true
output_name = "msd_arm_test"
deps = [
":msd_arm_test_entry",
"src",
]
assert_no_deps = [ "//zircon/system/ulib/trace-engine:trace-engine-static" ]
}
fuchsia_driver_component("msd_arm_test") {
testonly = true
component_name = "msd_arm_test"
deps = [
":msd_arm_bind",
":msd_arm_test-driver",
]
info = "msd_arm_test-info.json"
manifest = "meta/msd_arm_test.cml"
}
group("tests") {
testonly = true
public_deps = [
":msd_arm_bind_test",
"tests",
"tools:mali-util-test",
]
}
group("msd-system") {
deps = [
":msd-arm-mali",
":msd-arm-mali.bazel_input",
]
}
fuchsia_driver_package("msd-arm-mali") {
driver_components = [ ":msd_arm" ]
}
export_fuchsia_package_to_bazel("msd-arm-mali.bazel_input") {
package = ":msd-arm-mali"
}
# TODO(https://fxbug.dev/42074238): Remove once //vendor/.. dependencies
# use the above target instead.
group("msd-arm-mali_for_bazel") {
deps = [ ":msd-arm-mali.bazel_input" ]
}
# This is the OOT built msd-arm-mali driver.
# See https://fuchsia.googlesource.com/drivers/graphics/gpu/+/HEAD/drivers/msd-arm-mali/.
prebuilt_package("msd-arm-mali-oot") {
package_name = "msd-arm-mali"
if (is_debug) {
variant = "debug"
} else {
variant = "release"
}
archive = "//prebuilt/drivers/msd-arm-mali-$variant/msd-arm-mali"
}