mirror of
git://nv-tegra.nvidia.com/linux-hwpm.git
synced 2025-12-24 10:13:00 +03:00
- Update HWPM driver to add HAL layer. This will allow support for multiple chips. - Add below data structure hierarchy for HWPM driver HWPM driver structure -> chip info struct -> ip info array -> perfmux/perfmon info array NOTE: To make commit message more legible, using "aperture" instead of "perfmux and/or perfmon" - Chip info structure contains - Array of IP info - HAL function pointers - IP info structure contains IP specific info - Number of instances - Number of apertures per instance - Aperture ranges, strides, static info array - Aperture dynamic arrays - Aperture info structure contains - Hw index - Physical address info - MMIO address info - Add separate IP info files - Create separate files that include logic for allowlist, memory buffer, resources, ip, regops to make functions more legible. - Move probe, ioctl and io functions to os/linux path. - Add fn, info, register and verbose debug log levels to controls debug messages - add debugfs node to update dbg_mask - Correct MGBE perfmux base address Jira THWPM-41 Change-Id: I8ffdaa657789e2a187cbb98502d0359bb57f9c54 Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2651377 Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com> Reviewed-by: Seema Khowala <seemaj@nvidia.com> GVS: Gerrit_Virtual_Submit
73 lines
2.6 KiB
Makefile
73 lines
2.6 KiB
Makefile
#
|
|
# Tegra SOC HWPM
|
|
#
|
|
|
|
GCOV_PROFILE := y
|
|
|
|
ccflags-y += -I$(srctree.nvidia)/drivers/platform/tegra/hwpm
|
|
ccflags-y += -I$(srctree.nvidia)/drivers/platform/tegra/hwpm/include
|
|
ccflags-y += -I$(srctree.nvidia)/include
|
|
|
|
#
|
|
# Control IP config
|
|
# TODO: Set IP flag and include IP source file as per build config
|
|
#
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_VI=1
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_ISP
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_VIC
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_OFA
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_PVA
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_NVDLA
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_MGBE
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_SCF
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_NVDEC
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_NVENC
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_PCIE
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_DISPLAY=1
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_MSS_CHANNEL
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_MSS_GPU_HUB
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_MSS_ISO_NISO_HUBS
|
|
ccflags-y += -DCONFIG_SOC_HWPM_IP_MSS_MCF
|
|
|
|
obj-$(CONFIG_DEBUG_FS) += os/linux/tegra_hwpm_debugfs.o
|
|
obj-y += os/linux/tegra_hwpm_linux.o
|
|
obj-y += os/linux/tegra_hwpm_io.o
|
|
obj-y += os/linux/tegra_hwpm_ip.o
|
|
obj-y += os/linux/tegra_hwpm_ioctl.o
|
|
obj-y += os/linux/tegra_hwpm_log.o
|
|
|
|
obj-y += common/tegra_hwpm_alist_utils.o
|
|
obj-y += common/tegra_hwpm_mem_buf_utils.o
|
|
obj-y += common/tegra_hwpm_regops_utils.o
|
|
obj-y += common/tegra_hwpm_resource_utils.o
|
|
obj-y += common/tegra_hwpm_init.o
|
|
|
|
obj-y += hal/t234/t234_hwpm_alist_utils.o
|
|
obj-y += hal/t234/t234_hwpm_aperture_utils.o
|
|
obj-y += hal/t234/t234_hwpm_interface_utils.o
|
|
obj-y += hal/t234/t234_hwpm_ip_utils.o
|
|
obj-y += hal/t234/t234_hwpm_mem_buf_utils.o
|
|
obj-y += hal/t234/t234_hwpm_regops_utils.o
|
|
obj-y += hal/t234/t234_hwpm_regops_allowlist.o
|
|
obj-y += hal/t234/t234_hwpm_resource_utils.o
|
|
|
|
obj-y += hal/t234/ip/pma/t234_hwpm_ip_pma.o
|
|
obj-y += hal/t234/ip/rtr/t234_hwpm_ip_rtr.o
|
|
|
|
obj-y += hal/t234/ip/display/t234_hwpm_ip_display.o
|
|
obj-y += hal/t234/ip/isp/t234_hwpm_ip_isp.o
|
|
obj-y += hal/t234/ip/mgbe/t234_hwpm_ip_mgbe.o
|
|
obj-y += hal/t234/ip/mss_channel/t234_hwpm_ip_mss_channel.o
|
|
obj-y += hal/t234/ip/mss_gpu_hub/t234_hwpm_ip_mss_gpu_hub.o
|
|
obj-y += hal/t234/ip/mss_iso_niso_hubs/t234_hwpm_ip_mss_iso_niso_hubs.o
|
|
obj-y += hal/t234/ip/mss_mcf/t234_hwpm_ip_mss_mcf.o
|
|
obj-y += hal/t234/ip/nvdec/t234_hwpm_ip_nvdec.o
|
|
obj-y += hal/t234/ip/nvdla/t234_hwpm_ip_nvdla.o
|
|
obj-y += hal/t234/ip/nvenc/t234_hwpm_ip_nvenc.o
|
|
obj-y += hal/t234/ip/ofa/t234_hwpm_ip_ofa.o
|
|
obj-y += hal/t234/ip/pcie/t234_hwpm_ip_pcie.o
|
|
obj-y += hal/t234/ip/pva/t234_hwpm_ip_pva.o
|
|
obj-y += hal/t234/ip/scf/t234_hwpm_ip_scf.o
|
|
obj-y += hal/t234/ip/vi/t234_hwpm_ip_vi.o
|
|
obj-y += hal/t234/ip/vic/t234_hwpm_ip_vic.o
|