Files

328 lines
10 KiB
Python

load("//build/kernel/kleaf:kernel.bzl", "ddk_headers", "ddk_module")
load("//common_drivers:amlogic_utils.bzl", "m_k_files", "kernel_select")
m_k_files()
ddk_module(
name = "amlogic-usb",
srcs = glob([
"**/*.h",
]),
conditional_srcs = {
"CONFIG_AMLOGIC_USB_SUPPORT": {
True: [
"usb_main.c",
"dwc_otg/310/dwc_otg_driver.c",
"dwc_otg/310/dwc_otg_attr.c",
"dwc_otg/310/dwc_otg_cil.c",
"dwc_otg/310/dwc_otg_cil_intr.c",
"dwc_otg/310/dwc_otg_pcd_linux.c",
"dwc_otg/310/dwc_otg_pcd.c",
"dwc_otg/310/dwc_otg_pcd_intr.c",
"dwc_otg/310/dwc_otg_hcd.c",
"dwc_otg/310/dwc_otg_hcd_linux.c",
"dwc_otg/310/dwc_otg_hcd_intr.c",
"dwc_otg/310/dwc_otg_hcd_queue.c",
"dwc_otg/310/dwc_otg_hcd_ddma.c",
"dwc_otg/310/dwc_otg_adp.c",
"dwc_otg/310/usbphy.c",
"dwc_otg/310/common_port/dwc_common_linux.c",
"dwc_otg/310/dwc_otg_cfi.c",
"xhci_amlogic/xhci-meson.c",
"xhci_amlogic/xhci-mem-meson.c",
"xhci_amlogic/xhci-ext-caps-meson.c",
"xhci_amlogic/xhci-ring-meson.c",
"xhci_amlogic/xhci-hub-meson.c",
"xhci_amlogic/xhci-trace-meson.c",
"xhci_amlogic/xhci-dbg-meson.c",
"xhci_amlogic/xhci-plat-meson.c",
],
},
"CONFIG_AMLOGIC_USB_DWC3": {
True: [
"dwc3_amlogic/core-meson.c",
],
},
"CONFIG_TRACING": {
True: [
"dwc3_amlogic/trace-meson.c",
],
},
"CONFIG_AMLOGIC_USB_DWC3_HOST": {
True: [
"dwc3_amlogic/host-meson.c",
],
},
"CONFIG_AMLOGIC_USB_DWC3_GADGET": {
True: [
"dwc3_amlogic/gadget-meson.c",
"dwc3_amlogic/ep0-meson.c",
],
},
"CONFIG_AMLOGIC_USB_DWC3_DUAL_ROLE": {
True: [
"dwc3_amlogic/host-meson.c",
"dwc3_amlogic/gadget-meson.c",
"dwc3_amlogic/ep0-meson.c",
"dwc3_amlogic/drd-meson.c",
],
},
"CONFIG_AMLOGIC_USB_DWC3_ULPI": {
True: [
"dwc3_amlogic/ulpi-meson.c",
],
},
"CONFIG_AMLOGIC_USB_DWC3_DEBUGFS": {
True: [
"dwc3_amlogic/debugfs-meson.c",
],
},
"CONFIG_AMLOGIC_USB_DWC3_OTG": {
True: [
"dwc3_amlogic/dwc3-otg.c",
],
},
"CONFIG_AMLOGIC_BC": {
True: [
"bc/amlogic-bc.c",
],
},
"CONFIG_AMLOGIC_CC": {
True: [
"cc/amlogic-cc.c",
],
},
"CONFIG_AMLOGIC_CRG": {
True: [
"crg/crg-drd-glue.c",
"crg/crg.c",
"crg/crg_drd.c",
"crg/crg_udc.c",
"crg/crg_usbphy.c",
"crgdrdphy/phy-aml-crg-drd-usb.c",
"crgdrdphy/phy-aml-crg-drd-usb2.c",
"crgdrdphy/phy-aml-crg-drd-usb3.c",
"crgdrdphy/phy-aml-crg-drd-otg-v2.c",
"crgdrdphy/phy-aml-crg-drd-otg.c",
"crgdrdphy/phy-aml-m31-usb2.c",
"crgdrdphy/phy-aml-m31-usb3.c",
],
},
"CONFIG_DEBUG_FS": {
True: [
"xhci_amlogic/xhci-debugfs-meson.c",
],
},
"CONFIG_MESON_USBPHY": {
True: [
"phy_meson_usb/phy-meson-usb-core.c",
"phy_meson_usb/phy-meson-usb-com.c",
"phy_meson_usb/phy-meson-aml-usb2-com.c",
"phy_meson_usb/phy-meson-usb2-crg-otg.c",
"phy_meson_usb/phy-meson-usb2-crg-otg-v2.c",
"phy_meson_usb/phy-meson-usb-rtmux-otg.c",
"phy_meson_usb/phy-meson-synopsis-usb3-com.c",
"phy_meson_usb/phy-meson-m31-usb-com.c",
"phy_meson_usb/phy-meson-aml-usb3-com.c",
"phy_meson_usb/socs/phy-meson-sm1-usb.c",
"phy_meson_usb/socs/phy-meson-sc2-usb.c",
"phy_meson_usb/socs/phy-meson-s4-usb.c",
"phy_meson_usb/socs/phy-meson-t5w-usb.c",
"phy_meson_usb/socs/phy-meson-t7c-usb.c",
"phy_meson_usb/socs/phy-meson-a5-usb.c",
"phy_meson_usb/socs/phy-meson-s5-usb.c",
"phy_meson_usb/socs/phy-meson-t5m-usb.c",
"phy_meson_usb/socs/phy-meson-a4-usb.c",
"phy_meson_usb/socs/phy-meson-txhd2-usb.c",
"phy_meson_usb/socs/phy-meson-s7-usb.c",
"phy_meson_usb/socs/phy-meson-s7d-usb.c",
"phy_meson_usb/socs/phy-meson-s6-usb.c",
"phy_meson_usb/socs/phy-meson-t6d-usb.c",
"phy_meson_usb/socs/phy-meson-t6w-usb.c",
"phy_meson_usb/socs/phy-meson-t6x-usb.c",
"phy_meson_usb/socs/phy-meson-c4-usb.c",
"phy_meson_usb/socs/phy-meson-a9-usb.c",
"phy_meson_usb/socs/phy-meson-c5-usb.c",
],
},
"CONFIG_AMLOGIC_USB2PHY": {
True: [
"usb2phy/phy-aml-new-usb-v2.c",
"usb2phy/phy-aml-new-usb2-v2.c",
],
},
"CONFIG_AMLOGIC_USBPHY": {
True: [
"usb3v2phy/phy-aml-new-usb3-v2.c",
"usb3v2phy/phy-aml-new-usb3-com.c",
],
},
"CONFIG_AMLOGIC_USB3PHY": {
True: [
"usb3v3phy/phy-aml-new-usb3-v3.c",
"usbotg/phy-aml-new-otg.c",
],
},
"CONFIG_AMLOGIC_USBPHYC2": {
True: [
"usbc2phy/phy-aml-new-usb2-c2.c",
"usbc2phy/phy-aml-new-usb3-c2.c",
],
},
"CONFIG_USB_XHCI_DBGCAP": {
True: [
"xhci_amlogic/xhci-dbgcap-meson.c",
"xhci_amlogic/xhci-dbgtty-meson.c",
],
},
"CONFIG_USB_PCI": {
True: [
"xhci_amlogic/pci-quirks-meson.c",
],
},
},
hdrs = [
"//common:drivers/usb/host/xhci-mvebu.h",
"//common:drivers/base/base.h",
],
local_defines = [
"pr_fmt(fmt)=\"[amlogic-usb]: \" fmt",
"LM_INTERFACE",
#"DEBUG",
"DWC_HS_ELECT_TST",
"linux",
"DWC_LINUX",
],
linux_includes = [
"dwc_otg/310/common_port",
"../../../common/drivers/usb/host",
"../../../common/drivers/base",
"xhci_amlogic",
"dwc3_amlogic",
],
out = "amlogic-usb.ko",
kernel_build = kernel_select(),
visibility = ["//visibility:public"],
deps = [
"//common_drivers/drivers/gki_tool:amlogic-gkitool",
"//common_drivers/drivers/secmon:amlogic-secmon",
"//common_drivers/drivers/debug:amlogic-debug-iotrace",
"//common_drivers/drivers/debug:amlogic-debug",
"//common_drivers/drivers/power:amlogic-power",
"//common_drivers/drivers/pm:amlogic-pm",
"//common_drivers/drivers/cpu_info:amlogic-cpuinfo",
"//common_drivers/drivers/usb:typec-mux-meson",
]
)
ddk_module(
name = "typec-mux-meson",
srcs = glob([
"**/*.h",
]),
conditional_srcs = {
"CONFIG_TYPEC_MUX_MESON": {
True: [
"typec/mux/typec-mux-meson.c",
],
},
},
hdrs = [
],
local_defines = [
],
linux_includes = [
],
out = "typec-mux-meson.ko",
kernel_build = kernel_select(),
visibility = ["//visibility:public"],
deps = [
]
)
ddk_module(
name = "meson-typec-ctrl",
srcs = glob([
"**/*.h",
]),
conditional_srcs = {
"CONFIG_MESON_TYPEC_CTRL": {
True: [
"typec/meson-typec-ctrl-core.c",
],
},
"CONFIG_ANDROID_VENDOR_HOOKS": {
True: [
"typec/tcpm_log.c",
],
},
"CONFIG_TYPEC_AW35615_WHOLE": {
True: [
"typec/aw35615/aw35615_driver.c",
"typec/aw35615/aw35615_global.c",
"typec/aw35615/platform_helpers.c",
"typec/aw35615/dfs.c",
"typec/aw35615/core.c",
"typec/aw35615/PDPolicy.c",
"typec/aw35615/timer.c",
"typec/aw35615/PDProtocol.c",
"typec/aw35615/TypeC.c",
"typec/aw35615/Port.c",
"typec/aw35615/vendor_info.c",
"typec/aw35615/modules/dpm.c",
"typec/aw35615/modules/observer.c",
"typec/aw35615/vdm/bitfield_translators.c",
"typec/aw35615/vdm/vdm.c",
"typec/aw35615/vdm/vdm_callbacks.c",
"typec/aw35615/vdm/DisplayPort/dp.c",
"typec/aw35615/typec-aw35615-dbg.c",
"typec/aw35615/typec-aw35615-trace.c",
],
},
"CONFIG_TYPEC_AW35615_TCPM": {
True: [
"typec/aw35615/tcpci_aw35615.c",
],
},
"CONFIG_TYPEC_HUSB311": {
True: [
"typec/husb311/tcpci_husb311.c",
],
},
},
hdrs = [
"//common:drivers/usb/typec/class.h",
],
local_defines = [
"AW_HAVE_SNK",
"AW_HAVE_SRC",
"AW_HAVE_DRP",
"AW_HAVE_VBUS_ONLY",
"AW_HAVE_ACCMODE",
"AW_HAVE_EXT_MSG",
"AW_HAVE_VDM",
"AW_DEBUG_CODE",
"AW_HAVE_DP",
"AW_HAVE_PD",
"MESON_AW",
"DEBUG",
],
linux_includes = [
# tell define_trace.h where to find the typec-aw35615 trace header
"typec/aw35615/",
"typec/aw35615/modules/",
"typec/aw35615/vdm/",
"typec/aw35615/vdm/DisplayPort",
"../../../common/drivers/usb/typec",
],
out = "meson-typec-ctrl.ko",
kernel_build = kernel_select(),
visibility = ["//visibility:public"],
deps = [
"//common_drivers/drivers/gki_tool:amlogic-gkitool",
"//common_drivers/drivers/i2c/busses:amlogic-i2c",
"//common_drivers/drivers/usb:amlogic-usb",
"//common_drivers/drivers/usb:typec-mux-meson",
]
)