[U-Boot] [PATCH 01/10] sunxi: Add Machine Support for A83T SOC

Hans de Goede
2015-11-13T17:19:18Z

Hi,

On 12-11-15 19:09, Vishnu Patekar wrote:
> Allwinner A83T is octa-core cortex-a7 SOC.
>
> This enables support for A83T.
>
> Signed-off-by: Vishnu Patekar <vishnupatekar0510@gmail.com>
> ---
> arch/arm/cpu/armv7/sunxi/cpu_info.c | 2 ++
> board/sunxi/Kconfig | 11 ++++++++++-
> include/configs/sun8i.h | 2 ++
> 3 files changed, 14 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/cpu/armv7/sunxi/cpu_info.c b/arch/arm/cpu/armv7/sunxi/cpu_info.c
> index 05fef32..c9b4bc0 100644
> --- a/arch/arm/cpu/armv7/sunxi/cpu_info.c
> +++ b/arch/arm/cpu/armv7/sunxi/cpu_info.c
> @@ -71,6 +71,8 @@ int print_cpuinfo(void)
> puts("CPU: Allwinner A33 (SUN8I)\n");
> #elif defined CONFIG_MACH_SUN9I
> puts("CPU: Allwinner A80 (SUN9I)\n");
> +#elif defined CONFIG_MACH_SUN8I_A83T
> + puts("CPU: Allwinner A83T (SUN8I)\n");
> #else
> #warning Please update cpu_info.c with correct CPU information
> puts("CPU: SUNXI Family\n");
> diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
> index f6f2a60..ea69bf7 100644
> --- a/board/sunxi/Kconfig
> +++ b/board/sunxi/Kconfig
> @@ -68,6 +68,15 @@ config MACH_SUN8I_A33
> select SUPPORT_SPL
> select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
>
> +config MACH_SUN8I_A83T
> + bool "sun8i (Allwinner A83T)"
> + select CPU_V7
> + select CPU_V7_HAS_NONSEC
> + select CPU_V7_HAS_VIRT
> + select SUNXI_GEN_SUN6I
> + select SUPPORT_SPL
> + select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT

Please remove the CPU_V7_HAS_NONSEC, CPU_V7_HAS_VIRT and ARMV7_BOOT_SEC_DEFAULT
options here, these imply enabling PSCI support and we do not yet have PSCI
code for the A83t. This is also why you need to add RMV7_BOOT_SEC_DEFAULT=y
to your defconfig to get things to work.

We will need to figure out SMP support later for now just leave these out.

> +
> config MACH_SUN9I
> bool "sun9i (Allwinner A80)"
> select CPU_V7
> @@ -78,7 +87,7 @@ endchoice
> # The sun8i SoCs share a lot, this helps to avoid a lot of "if A23 || A33"
> config MACH_SUN8I
> bool
> - default y if MACH_SUN8I_A23 || MACH_SUN8I_A33
> + default y if MACH_SUN8I_A23 || MACH_SUN8I_A33 || MACH_SUN8I_A83T
>
>
> config DRAM_CLK
> diff --git a/include/configs/sun8i.h b/include/configs/sun8i.h
> index 4fc6365..c139e0a 100644
> --- a/include/configs/sun8i.h
> +++ b/include/configs/sun8i.h
> @@ -25,6 +25,8 @@
> #define CONFIG_ARMV7_PSCI_NR_CPUS 2
> #elif defined(CONFIG_MACH_SUN8I_A33)
> #define CONFIG_ARMV7_PSCI_NR_CPUS 4
> +#elif defined(CONFIG_MACH_SUN8I_A83T)
> +#define CONFIG_ARMV7_PSCI_NR_CPUS 8
> #else
> #error Unsupported sun8i variant
> #endif
>

And this can be dropped too then.

Regards,

Hans