Files
linux-hwpm/Makefile
Vedashree Vidwans 92be6f7a00 tegra: hwpm: restructure HWPM driver
- 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
2022-02-09 09:46:25 -08:00

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