blob: 12aded6d1350afe806f9d94e0a31b67d8d9a284b [file] [log] [blame]
# Copyright lowRISC contributors.
# Licensed under the Apache License, Version 2.0, see LICENSE for details.
# SPDX-License-Identifier: Apache-2.0
load("@rules_python//python:defs.bzl", "py_library")
load("@ot_python_deps//:requirements.bzl", "requirement")
package(default_visibility = ["//visibility:public"])
py_library(
name = "lib",
srcs = ["lib.py"],
)
py_library(
name = "access",
srcs = ["access.py"],
deps = [":lib"],
)
py_library(
name = "alert",
srcs = ["alert.py"],
deps = [
":bits",
":lib",
":signal",
],
)
py_library(
name = "bits",
srcs = ["bits.py"],
deps = [
":lib",
":params",
],
)
py_library(
name = "bus_interfaces",
srcs = ["bus_interfaces.py"],
deps = [
":inter_signal",
":lib",
],
)
py_library(
name = "clocking",
srcs = ["clocking.py"],
deps = [":lib"],
)
py_library(
name = "countermeasure",
srcs = ["countermeasure.py"],
deps = [":lib"],
)
py_library(
name = "enum_entry",
srcs = ["enum_entry.py"],
deps = [":lib"],
)
py_library(
name = "field",
srcs = ["field.py"],
deps = [
":access",
":bits",
":enum_entry",
":lib",
":params",
"//util/design/mubi:prim_mubi",
],
)
py_library(
name = "html_helpers",
srcs = ["html_helpers.py"],
)
py_library(
name = "inter_signal",
srcs = ["inter_signal.py"],
deps = [":lib"],
)
py_library(
name = "ip_block",
srcs = ["ip_block.py"],
deps = [
":alert",
":bus_interfaces",
":clocking",
":countermeasure",
":inter_signal",
":lib",
":params",
":reg_block",
":signal",
requirement("hjson"),
],
)
py_library(
name = "params",
srcs = ["params.py"],
deps = [":lib"],
)
py_library(
name = "reg_base",
srcs = ["reg_base.py"],
deps = [":field"],
)
py_library(
name = "reg_block",
srcs = ["reg_block.py"],
deps = [
":access",
":alert",
":bus_interfaces",
":clocking",
":field",
":lib",
":multi_register",
":params",
":register",
":signal",
":window",
],
)
py_library(
name = "register",
srcs = ["register.py"],
deps = [
":access",
":clocking",
":field",
":lib",
":params",
":reg_base",
],
)
py_library(
name = "multi_register",
srcs = ["multi_register.py"],
deps = [
":clocking",
":field",
":lib",
":params",
":reg_base",
":register",
],
)
py_library(
name = "signal",
srcs = ["signal.py"],
deps = [
":bits",
":lib",
],
)
py_library(
name = "window",
srcs = ["window.py"],
deps = [
":access",
":lib",
":params",
],
)
py_library(
name = "gen_cheader",
srcs = ["gen_cheader.py"],
deps = [
":field",
":ip_block",
":multi_register",
":params",
":register",
":signal",
":window",
],
)
py_library(
name = "gen_dv",
srcs = ["gen_dv.py"],
deps = [
":ip_block",
":multi_register",
":register",
":window",
requirement("mako"),
requirement("pyyaml"),
],
)
py_library(
name = "gen_fpv",
srcs = ["gen_fpv.py"],
deps = [
":ip_block",
requirement("mako"),
requirement("pyyaml"),
],
)
py_library(
name = "gen_html",
srcs = ["gen_html.py"],
deps = [
":html_helpers",
":ip_block",
":multi_register",
":reg_block",
":register",
":window",
],
)
py_library(
name = "gen_json",
srcs = ["gen_json.py"],
deps = [requirement("hjson")],
)
py_library(
name = "gen_rtl",
srcs = ["gen_rtl.py"],
deps = [
":ip_block",
":lib",
":multi_register",
":reg_base",
":register",
requirement("mako"),
],
)
py_library(
name = "gen_rust",
srcs = ["gen_rust.py"],
deps = [
":field",
":ip_block",
":multi_register",
":params",
":register",
":signal",
":window",
],
)
py_library(
name = "gen_tock",
srcs = ["gen_tock.py"],
deps = [
":field",
":ip_block",
":multi_register",
":params",
":register",
":signal",
":window",
],
)
py_library(
name = "gen_sec_cm_testplan",
srcs = ["gen_sec_cm_testplan.py"],
deps = [
":ip_block",
requirement("hjson"),
requirement("mako"),
],
)
py_library(
name = "gen_selfdoc",
srcs = ["gen_selfdoc.py"],
deps = [
":access",
":enum_entry",
":field",
":ip_block",
":multi_register",
":register",
":validate",
":window",
],
)
py_library(
name = "validate",
srcs = ["validate.py"],
)
py_library(
name = "version",
srcs = ["version.py"],
)
filegroup(
name = "tpl_files",
srcs = glob(["**/*.tpl"]),
)