feat(msm8916): add port for MDM9607

The Qualcomm X5 Modem (MDM9607) SoC is very similar to the existing
MSM8916, except for:

  - Single core ARM Cortex-A7
  - No GPU
  - MMU-500 r2p4 instead of r0p0 (need to clear CACHE_LOCK bit)
  - Different default BL31/BL33 address and UART number

Make the existing MSM8916 platform port usable for MDM9607 as well by
adding some minimal if statements where necessary plus the platform
make files for mdm9607.

Change-Id: I4dd02c8e29af6282d8d828c3027c5e333459ba36
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
This commit is contained in:
Stephan Gerhold 2022-09-16 10:45:19 +02:00
parent d9e565ea80
commit 78aac78ad2
4 changed files with 28 additions and 0 deletions

View file

@ -0,0 +1,14 @@
#
# Copyright (c) 2022-2023, Stephan Gerhold <stephan@gerhold.net>
#
# SPDX-License-Identifier: BSD-3-Clause
#
ARM_ARCH_MAJOR := 7
ARM_CORTEX_A7 := yes
BL31_BASE ?= 0x87e00000
PRELOADED_BL33_BASE ?= 0x82900000
QTI_UART_NUM ?= 5
include plat/qti/msm8916/platform.mk

View file

@ -0,0 +1,7 @@
#
# Copyright (c) 2022-2023, Stephan Gerhold <stephan@gerhold.net>
#
# SPDX-License-Identifier: BSD-3-Clause
#
include plat/qti/msm8916/sp_min/sp_min-msm8916.mk

View file

@ -31,7 +31,11 @@
#else
#define PLATFORM_CLUSTER_COUNT U(1)
#endif
#if defined(PLAT_mdm9607)
#define PLATFORM_CPU_PER_CLUSTER_SHIFT U(0) /* 1 */
#else
#define PLATFORM_CPU_PER_CLUSTER_SHIFT U(2) /* 4 */
#endif
#define PLATFORM_CPUS_PER_CLUSTER (1 << PLATFORM_CPU_PER_CLUSTER_SHIFT)
#define PLATFORM_CORE_COUNT (PLATFORM_CLUSTER_COUNT * \
PLATFORM_CPUS_PER_CLUSTER)

View file

@ -51,6 +51,9 @@ static const struct uartdm_gpios uartdm_gpio_map[] = {
{4, 5, 0x2}, {20, 21, 0x3},
#elif defined(PLAT_msm8916) || defined(PLAT_msm8939)
{0, 1, 0x2}, {4, 5, 0x2},
#elif defined(PLAT_mdm9607)
{12, 13, 0x2}, {4, 5, 0x2}, {0, 1, 0x1},
{16, 17, 0x2}, {8, 9, 0x2}, {20, 21, 0x2},
#endif
};