define_modules.bzl 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. # TODO
  2. # Add ddk module definition for frpc-trusted driver
  3. load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
  4. load(
  5. "//build/kernel/kleaf:kernel.bzl",
  6. "ddk_headers",
  7. "ddk_module",
  8. "kernel_module",
  9. "kernel_modules_install",
  10. )
  11. def define_modules(target, variant):
  12. kernel_build_variant = "{}_{}".format(target, variant)
  13. # Path to dsp folder from msm-kernel/include/trace directory
  14. trace_include_path = "../../../{}/dsp".format(native.package_name())
  15. ddk_module(
  16. name = "{}_frpc-adsprpc".format(kernel_build_variant),
  17. kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
  18. deps = ["//msm-kernel:all_headers"],
  19. srcs = [
  20. "dsp/adsprpc.c",
  21. "dsp/adsprpc_compat.c",
  22. "dsp/adsprpc_compat.h",
  23. "dsp/adsprpc_rpmsg.c",
  24. "dsp/adsprpc_shared.h",
  25. "dsp/fastrpc_trace.h",
  26. ],
  27. local_defines = ["DSP_TRACE_INCLUDE_PATH={}".format(trace_include_path)],
  28. out = "frpc-adsprpc.ko",
  29. hdrs = ["include/linux/fastrpc.h"],
  30. includes = ["include/linux"],
  31. )
  32. ddk_module(
  33. name = "{}_cdsp-loader".format(kernel_build_variant),
  34. kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
  35. deps = ["//msm-kernel:all_headers"],
  36. srcs = ["dsp/cdsp-loader.c"],
  37. out = "cdsp-loader.ko",
  38. )
  39. copy_to_dist_dir(
  40. name = "{}_dsp-kernel_dist".format(kernel_build_variant),
  41. data = [
  42. ":{}_frpc-adsprpc".format(kernel_build_variant),
  43. ":{}_cdsp-loader".format(kernel_build_variant),
  44. ],
  45. dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
  46. flat = True,
  47. wipe_dist_dir = False,
  48. allow_duplicate_filenames = False,
  49. mode_overrides = {"**/*": "644"},
  50. )