From e2469d823bfc633a32782a8c018d3b55eb2b23a1 Mon Sep 17 00:00:00 2001 From: Varun Wadekar Date: Thu, 13 Jun 2019 15:32:11 -0700 Subject: [PATCH] Tegra: reorganize drivers and lib folders This patch moves the 'drivers' and the 'lib' folders out of the 'common' folder. This way the 'common' folder shall contain only the platform support required for all Tegra platforms. Change-Id: I2f238572d0a078d60c6b458a559538dc8a4d1856 Signed-off-by: Varun Wadekar --- plat/nvidia/tegra/common/tegra_common.mk | 39 ++++++++++++------- .../tegra/{common => }/drivers/bpmp/bpmp.c | 0 .../{common => }/drivers/bpmp_ipc/intf.c | 0 .../{common => }/drivers/bpmp_ipc/intf.h | 0 .../tegra/{common => }/drivers/bpmp_ipc/ivc.c | 0 .../tegra/{common => }/drivers/bpmp_ipc/ivc.h | 0 .../{common => }/drivers/flowctrl/flowctrl.c | 0 .../{common => }/drivers/gpcdma/gpcdma.c | 0 .../{common => }/drivers/memctrl/memctrl_v1.c | 0 .../{common => }/drivers/memctrl/memctrl_v2.c | 0 .../tegra/{common => }/drivers/pmc/pmc.c | 0 .../tegra/{common => }/drivers/smmu/smmu.c | 0 .../{common => }/drivers/spe/shared_console.S | 0 .../tegra/{common => }/lib/debug/profiler.c | 0 plat/nvidia/tegra/soc/t132/platform_t132.mk | 6 +-- plat/nvidia/tegra/soc/t186/platform_t186.mk | 12 +++--- plat/nvidia/tegra/soc/t194/platform_t194.mk | 15 ++++--- plat/nvidia/tegra/soc/t210/platform_t210.mk | 12 +++--- 18 files changed, 48 insertions(+), 36 deletions(-) rename plat/nvidia/tegra/{common => }/drivers/bpmp/bpmp.c (100%) rename plat/nvidia/tegra/{common => }/drivers/bpmp_ipc/intf.c (100%) rename plat/nvidia/tegra/{common => }/drivers/bpmp_ipc/intf.h (100%) rename plat/nvidia/tegra/{common => }/drivers/bpmp_ipc/ivc.c (100%) rename plat/nvidia/tegra/{common => }/drivers/bpmp_ipc/ivc.h (100%) rename plat/nvidia/tegra/{common => }/drivers/flowctrl/flowctrl.c (100%) rename plat/nvidia/tegra/{common => }/drivers/gpcdma/gpcdma.c (100%) rename plat/nvidia/tegra/{common => }/drivers/memctrl/memctrl_v1.c (100%) rename plat/nvidia/tegra/{common => }/drivers/memctrl/memctrl_v2.c (100%) rename plat/nvidia/tegra/{common => }/drivers/pmc/pmc.c (100%) rename plat/nvidia/tegra/{common => }/drivers/smmu/smmu.c (100%) rename plat/nvidia/tegra/{common => }/drivers/spe/shared_console.S (100%) rename plat/nvidia/tegra/{common => }/lib/debug/profiler.c (100%) diff --git a/plat/nvidia/tegra/common/tegra_common.mk b/plat/nvidia/tegra/common/tegra_common.mk index f412a80b8..bb8bd7d89 100644 --- a/plat/nvidia/tegra/common/tegra_common.mk +++ b/plat/nvidia/tegra/common/tegra_common.mk @@ -12,37 +12,46 @@ PLAT_INCLUDES := -Iplat/nvidia/tegra/include/drivers \ include lib/xlat_tables_v2/xlat_tables.mk PLAT_BL_COMMON_SOURCES += ${XLAT_TABLES_LIB_SRCS} -COMMON_DIR := plat/nvidia/tegra/common +TEGRA_COMMON := plat/nvidia/tegra/common +TEGRA_DRIVERS := plat/nvidia/tegra/drivers +TEGRA_LIBS := plat/nvidia/tegra/lib # Include GICv3 driver files include drivers/arm/gic/v3/gicv3.mk TEGRA_GICv3_SOURCES := $(GICV3_SOURCES) \ plat/common/plat_gicv3.c \ - ${COMMON_DIR}/tegra_gicv3.c + ${TEGRA_COMMON}/tegra_gicv3.c # Include GICv2 driver files include drivers/arm/gic/v2/gicv2.mk TEGRA_GICv2_SOURCES := ${GICV2_SOURCES} \ plat/common/plat_gicv2.c \ - ${COMMON_DIR}/tegra_gicv2.c + ${TEGRA_COMMON}/tegra_gicv2.c + +TEGRA_GICv3_SOURCES := drivers/arm/gic/common/gic_common.c \ + drivers/arm/gic/v3/arm_gicv3_common.c \ + drivers/arm/gic/v3/gicv3_main.c \ + drivers/arm/gic/v3/gicv3_helpers.c \ + plat/common/plat_gicv3.c \ + ${TEGRA_COMMON}/tegra_gicv3.c BL31_SOURCES += drivers/delay_timer/delay_timer.c \ drivers/io/io_storage.c \ plat/common/aarch64/crash_console_helpers.S \ ${TEGRA_GICv2_SOURCES} \ - ${COMMON_DIR}/aarch64/tegra_helpers.S \ - ${COMMON_DIR}/lib/debug/profiler.c \ - ${COMMON_DIR}/tegra_bl31_setup.c \ - ${COMMON_DIR}/tegra_delay_timer.c \ - ${COMMON_DIR}/tegra_ehf.c \ - ${COMMON_DIR}/tegra_fiq_glue.c \ - ${COMMON_DIR}/tegra_io_storage.c \ - ${COMMON_DIR}/tegra_platform.c \ - ${COMMON_DIR}/tegra_pm.c \ - ${COMMON_DIR}/tegra_sip_calls.c \ - ${COMMON_DIR}/tegra_sdei.c + ${TEGRA_COMMON}/aarch64/tegra_helpers.S \ + ${TEGRA_LIBS}/debug/profiler.c \ + ${TEGRA_COMMON}/tegra_bl31_setup.c \ + ${TEGRA_COMMON}/tegra_delay_timer.c \ + ${TEGRA_COMMON}/tegra_ehf.c \ + ${TEGRA_COMMON}/tegra_fiq_glue.c \ + ${TEGRA_COMMON}/tegra_io_storage.c \ + ${TEGRA_COMMON}/tegra_platform.c \ + ${TEGRA_COMMON}/tegra_pm.c \ + ${TEGRA_COMMON}/tegra_sip_calls.c \ + ${TEGRA_COMMON}/tegra_sdei.c ifneq ($(ENABLE_STACK_PROTECTOR), 0) -BL31_SOURCES += ${COMMON_DIR}/tegra_stack_protector.c +BL31_SOURCES += ${TEGRA_COMMON}/tegra_stack_protector.c endif diff --git a/plat/nvidia/tegra/common/drivers/bpmp/bpmp.c b/plat/nvidia/tegra/drivers/bpmp/bpmp.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/bpmp/bpmp.c rename to plat/nvidia/tegra/drivers/bpmp/bpmp.c diff --git a/plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.c b/plat/nvidia/tegra/drivers/bpmp_ipc/intf.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.c rename to plat/nvidia/tegra/drivers/bpmp_ipc/intf.c diff --git a/plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.h b/plat/nvidia/tegra/drivers/bpmp_ipc/intf.h similarity index 100% rename from plat/nvidia/tegra/common/drivers/bpmp_ipc/intf.h rename to plat/nvidia/tegra/drivers/bpmp_ipc/intf.h diff --git a/plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.c b/plat/nvidia/tegra/drivers/bpmp_ipc/ivc.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.c rename to plat/nvidia/tegra/drivers/bpmp_ipc/ivc.c diff --git a/plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.h b/plat/nvidia/tegra/drivers/bpmp_ipc/ivc.h similarity index 100% rename from plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.h rename to plat/nvidia/tegra/drivers/bpmp_ipc/ivc.h diff --git a/plat/nvidia/tegra/common/drivers/flowctrl/flowctrl.c b/plat/nvidia/tegra/drivers/flowctrl/flowctrl.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/flowctrl/flowctrl.c rename to plat/nvidia/tegra/drivers/flowctrl/flowctrl.c diff --git a/plat/nvidia/tegra/common/drivers/gpcdma/gpcdma.c b/plat/nvidia/tegra/drivers/gpcdma/gpcdma.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/gpcdma/gpcdma.c rename to plat/nvidia/tegra/drivers/gpcdma/gpcdma.c diff --git a/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v1.c b/plat/nvidia/tegra/drivers/memctrl/memctrl_v1.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/memctrl/memctrl_v1.c rename to plat/nvidia/tegra/drivers/memctrl/memctrl_v1.c diff --git a/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v2.c b/plat/nvidia/tegra/drivers/memctrl/memctrl_v2.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/memctrl/memctrl_v2.c rename to plat/nvidia/tegra/drivers/memctrl/memctrl_v2.c diff --git a/plat/nvidia/tegra/common/drivers/pmc/pmc.c b/plat/nvidia/tegra/drivers/pmc/pmc.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/pmc/pmc.c rename to plat/nvidia/tegra/drivers/pmc/pmc.c diff --git a/plat/nvidia/tegra/common/drivers/smmu/smmu.c b/plat/nvidia/tegra/drivers/smmu/smmu.c similarity index 100% rename from plat/nvidia/tegra/common/drivers/smmu/smmu.c rename to plat/nvidia/tegra/drivers/smmu/smmu.c diff --git a/plat/nvidia/tegra/common/drivers/spe/shared_console.S b/plat/nvidia/tegra/drivers/spe/shared_console.S similarity index 100% rename from plat/nvidia/tegra/common/drivers/spe/shared_console.S rename to plat/nvidia/tegra/drivers/spe/shared_console.S diff --git a/plat/nvidia/tegra/common/lib/debug/profiler.c b/plat/nvidia/tegra/lib/debug/profiler.c similarity index 100% rename from plat/nvidia/tegra/common/lib/debug/profiler.c rename to plat/nvidia/tegra/lib/debug/profiler.c diff --git a/plat/nvidia/tegra/soc/t132/platform_t132.mk b/plat/nvidia/tegra/soc/t132/platform_t132.mk index 16bd0ead2..3d76be9ed 100644 --- a/plat/nvidia/tegra/soc/t132/platform_t132.mk +++ b/plat/nvidia/tegra/soc/t132/platform_t132.mk @@ -25,9 +25,9 @@ PLAT_INCLUDES += -Iplat/nvidia/tegra/include/t132 BL31_SOURCES += drivers/ti/uart/aarch64/16550_console.S \ lib/cpus/aarch64/denver.S \ - ${COMMON_DIR}/drivers/flowctrl/flowctrl.c \ - ${COMMON_DIR}/drivers/memctrl/memctrl_v1.c \ - ${COMMON_DIR}/drivers/pmc/pmc.c \ + ${TEGRA_DRIVERS}/flowctrl/flowctrl.c \ + ${TEGRA_DRIVERS}/memctrl/memctrl_v1.c \ + ${TEGRA_DRIVERS}/pmc/pmc.c \ ${SOC_DIR}/plat_psci_handlers.c \ ${SOC_DIR}/plat_sip_calls.c \ ${SOC_DIR}/plat_setup.c \ diff --git a/plat/nvidia/tegra/soc/t186/platform_t186.mk b/plat/nvidia/tegra/soc/t186/platform_t186.mk index d320aac2f..6739c50d1 100644 --- a/plat/nvidia/tegra/soc/t186/platform_t186.mk +++ b/plat/nvidia/tegra/soc/t186/platform_t186.mk @@ -43,16 +43,16 @@ PLAT_INCLUDES += -Iplat/nvidia/tegra/include/t186 \ BL31_SOURCES += drivers/ti/uart/aarch64/16550_console.S \ lib/cpus/aarch64/denver.S \ lib/cpus/aarch64/cortex_a57.S \ - ${COMMON_DIR}/drivers/bpmp_ipc/intf.c \ - ${COMMON_DIR}/drivers/bpmp_ipc/ivc.c \ - ${COMMON_DIR}/drivers/gpcdma/gpcdma.c \ - ${COMMON_DIR}/drivers/memctrl/memctrl_v2.c \ - ${COMMON_DIR}/drivers/smmu/smmu.c \ + ${TEGRA_DRIVERS}/bpmp_ipc/intf.c \ + ${TEGRA_DRIVERS}/bpmp_ipc/ivc.c \ + ${TEGRA_DRIVERS}/gpcdma/gpcdma.c \ + ${TEGRA_DRIVERS}/memctrl/memctrl_v2.c \ + ${TEGRA_DRIVERS}/smmu/smmu.c \ ${SOC_DIR}/drivers/mce/mce.c \ ${SOC_DIR}/drivers/mce/ari.c \ ${SOC_DIR}/drivers/mce/nvg.c \ ${SOC_DIR}/drivers/mce/aarch64/nvg_helpers.S \ - $(SOC_DIR)/drivers/se/se.c \ + $(SOC_DIR)/drivers/se/se.c \ ${SOC_DIR}/plat_memctrl.c \ ${SOC_DIR}/plat_psci_handlers.c \ ${SOC_DIR}/plat_setup.c \ diff --git a/plat/nvidia/tegra/soc/t194/platform_t194.mk b/plat/nvidia/tegra/soc/t194/platform_t194.mk index d7d15f556..7573ed23b 100644 --- a/plat/nvidia/tegra/soc/t194/platform_t194.mk +++ b/plat/nvidia/tegra/soc/t194/platform_t194.mk @@ -40,11 +40,10 @@ PLAT_INCLUDES += -Iplat/nvidia/tegra/include/t194 \ BL31_SOURCES += drivers/ti/uart/aarch64/16550_console.S \ lib/cpus/aarch64/denver.S \ - ${COMMON_DIR}/drivers/bpmp_ipc/intf.c \ - ${COMMON_DIR}/drivers/bpmp_ipc/ivc.c \ - ${COMMON_DIR}/drivers/gpcdma/gpcdma.c \ - ${COMMON_DIR}/drivers/memctrl/memctrl_v2.c \ - ${COMMON_DIR}/drivers/smmu/smmu.c \ + ${TEGRA_DRIVERS}/bpmp_ipc/intf.c \ + ${TEGRA_DRIVERS}/bpmp_ipc/ivc.c \ + ${TEGRA_DRIVERS}/memctrl/memctrl_v2.c \ + ${TEGRA_DRIVERS}/smmu/smmu.c \ ${SOC_DIR}/drivers/mce/mce.c \ ${SOC_DIR}/drivers/mce/nvg.c \ ${SOC_DIR}/drivers/mce/aarch64/nvg_helpers.S \ @@ -57,8 +56,12 @@ BL31_SOURCES += drivers/ti/uart/aarch64/16550_console.S \ ${SOC_DIR}/plat_smmu.c \ ${SOC_DIR}/plat_trampoline.S +ifeq (${USE_GPC_DMA}, 1) +BL31_SOURCES += ${TEGRA_DRIVERS}/gpcdma/gpcdma.c +endif + ifeq (${ENABLE_CONSOLE_SPE},1) -BL31_SOURCES += ${COMMON_DIR}/drivers/spe/shared_console.S +BL31_SOURCES += ${TEGRA_DRIVERS}/spe/shared_console.S endif # RAS sources diff --git a/plat/nvidia/tegra/soc/t210/platform_t210.mk b/plat/nvidia/tegra/soc/t210/platform_t210.mk index 14e3324a8..6c4c17510 100644 --- a/plat/nvidia/tegra/soc/t210/platform_t210.mk +++ b/plat/nvidia/tegra/soc/t210/platform_t210.mk @@ -25,20 +25,20 @@ $(eval $(call add_define,MAX_MMAP_REGIONS)) ENABLE_TEGRA_WDT_LEGACY_FIQ_HANDLING := 1 -PLAT_INCLUDES += -Iplat/nvidia/tegra/include/t210 \ +PLAT_INCLUDES += -Iplat/nvidia/tegra/include/t210 \ -I${SOC_DIR}/drivers/se BL31_SOURCES += drivers/ti/uart/aarch64/16550_console.S \ lib/cpus/aarch64/cortex_a53.S \ lib/cpus/aarch64/cortex_a57.S \ - ${COMMON_DIR}/drivers/bpmp/bpmp.c \ - ${COMMON_DIR}/drivers/flowctrl/flowctrl.c \ - ${COMMON_DIR}/drivers/memctrl/memctrl_v1.c \ - ${COMMON_DIR}/drivers/pmc/pmc.c \ + ${TEGRA_DRIVERS}/bpmp/bpmp.c \ + ${TEGRA_DRIVERS}/flowctrl/flowctrl.c \ + ${TEGRA_DRIVERS}/memctrl/memctrl_v1.c \ + ${TEGRA_DRIVERS}/pmc/pmc.c \ ${SOC_DIR}/plat_psci_handlers.c \ ${SOC_DIR}/plat_setup.c \ ${SOC_DIR}/drivers/se/security_engine.c \ - ${SOC_DIR}/plat_secondary.c \ + ${SOC_DIR}/plat_secondary.c \ ${SOC_DIR}/plat_sip_calls.c # Enable workarounds for selected Cortex-A57 erratas.