soc: arm: add infineon_xmc series support

Add infineon xmc series with XMC4500 support. XMC series comes with,
- CPU operates upto 120MHz
- 3 RAM (PSRAM1 - code, DSRAM1 - data and DSRAM2 - communiation)
- upto 1MB flash

init: clock control & gpio is not done, so SoC initialization directly
relies on HAL. Core operating clock is stored in no_init section, which
is kept under DSRAM1. Only DSRAM1 is used until clock support. Using
PSRAM1 and DSRAM1 needs adaptation in linker script - planned for next
revision.

Note: SystemInit cannot be consumed directly due to vector table +
HAL linker dependency.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
This commit is contained in:
Parthiban Nallathambi 2020-04-21 11:37:42 +02:00 committed by Carles Cufí
commit b687d76d09
19 changed files with 330 additions and 0 deletions

18
modules/Kconfig.infineon Normal file
View file

@ -0,0 +1,18 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2020 Linumiz
# Author: Parthiban Nallathambi <parthiban@linumiz.com>
config HAS_XMCLIB
bool
select HAS_CMSIS_CORE
depends on SOC_FAMILY_XMC
if HAS_XMCLIB
config HAS_XMCLIB_UART
bool
help
Enable XMCLIB Universal asynchronous receiver transmitter (UART)
endif # HAS_XMCLIB