[U-Boot] [PATCH 7/9] arm: exynos: realign the code to allow support for newer 64-bit platforms

Minkyu Kang mk7.kang at samsung.com
Thu Apr 21 15:51:56 CEST 2016


Hi,

On 18/04/16 23:11, Thomas Abraham wrote:
> Hi Mr. Kang,
> 
> On Mon, Apr 18, 2016 at 4:39 PM, Minkyu Kang <mk7.kang at samsung.com> wrote:
>> Dear Thomas Abraham,
>>
>> On 13/04/16 19:43, Thomas Abraham wrote:
>>> From: Thomas Abraham <thomas.ab at samsung.com>
>>>
>>> The existing Exynos 32-bit platform support needs to be realigned in
>>> order to support newer 64-bit Exynos platforms. The driver model will
>>> be utlized for drivers on the 64-bit Exynos platforms and so some of
>>> the older platform support code would not be required for the newer
>>> 64-bit Exynos platforms.
>>>
>>> Cc: Minkyu Kang <mk7.kang at samsung.com>
>>> Signed-off-by: Thomas Abraham <thomas.ab at samsung.com>
>>> ---
>>>  arch/arm/Kconfig                         |    1 -
>>>  arch/arm/mach-exynos/Kconfig             |   14 ++++++++++++++
>>>  arch/arm/mach-exynos/Makefile            |    7 +++++--
>>>  arch/arm/mach-exynos/include/mach/cpu.h  |    2 +-
>>>  arch/arm/mach-exynos/include/mach/gpio.h |    2 +-
>>>  arch/arm/mach-exynos/soc.c               |    2 ++
>>>  6 files changed, 23 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>>> index b82ec18..ee22a3c 100644
>>> --- a/arch/arm/Kconfig
>>> +++ b/arch/arm/Kconfig
>>> @@ -426,7 +426,6 @@ config TARGET_BCMNSP
>>>
>>>  config ARCH_EXYNOS
>>>       bool "Samsung EXYNOS"
>>> -     select CPU_V7
>>>       select DM
>>>       select DM_SPI_FLASH
>>>       select DM_SERIAL
>>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>>> index a6a7597..acab947 100644
>>> --- a/arch/arm/mach-exynos/Kconfig
>>> +++ b/arch/arm/mach-exynos/Kconfig
>>> @@ -7,30 +7,38 @@ choice
>>>  config TARGET_SMDKV310
>>>       select SUPPORT_SPL
>>>       bool "Exynos4210 SMDKV310 board"
>>> +     select CPU_V7
>>>       select OF_CONTROL
>>>
>>>  config TARGET_TRATS
>>>       bool "Exynos4210 Trats board"
>>> +     select CPU_V7
>>>
>>>  config TARGET_S5PC210_UNIVERSAL
>>>       bool "EXYNOS4210 Universal C210 board"
>>> +     select CPU_V7
>>>
>>>  config TARGET_ORIGEN
>>>       bool "Exynos4412 Origen board"
>>> +     select CPU_V7
>>>       select SUPPORT_SPL
>>>
>>>  config TARGET_TRATS2
>>>       bool "Exynos4412 Trat2 board"
>>> +     select CPU_V7
>>>
>>>  config TARGET_ODROID
>>>       bool "Exynos4412 Odroid board"
>>> +     select CPU_V7
>>>
>>>  config TARGET_ODROID_XU3
>>>       bool "Exynos5422 Odroid board"
>>> +     select CPU_V7
>>>       select OF_CONTROL
>>>
>>>  config TARGET_ARNDALE
>>>       bool "Exynos5250 Arndale board"
>>> +     select CPU_V7
>>>       select CPU_V7_HAS_NONSEC
>>>       select CPU_V7_HAS_VIRT
>>>       select SUPPORT_SPL
>>> @@ -38,32 +46,38 @@ config TARGET_ARNDALE
>>>
>>>  config TARGET_SMDK5250
>>>       bool "SMDK5250 board"
>>> +     select CPU_V7
>>>       select SUPPORT_SPL
>>>       select OF_CONTROL
>>>
>>>  config TARGET_SNOW
>>>       bool "Snow board"
>>> +     select CPU_V7
>>>       select SUPPORT_SPL
>>>       select OF_CONTROL
>>>
>>>  config TARGET_SPRING
>>>       bool "Spring board"
>>> +     select CPU_V7
>>>       select SUPPORT_SPL
>>>       select OF_CONTROL
>>>       select SPL_DISABLE_OF_CONTROL
>>>
>>>  config TARGET_SMDK5420
>>>       bool "SMDK5420 board"
>>> +     select CPU_V7
>>>       select SUPPORT_SPL
>>>       select OF_CONTROL
>>>
>>>  config TARGET_PEACH_PI
>>>       bool "Peach Pi board"
>>> +     select CPU_V7
>>>       select SUPPORT_SPL
>>>       select OF_CONTROL
>>>
>>>  config TARGET_PEACH_PIT
>>>       bool "Peach Pit board"
>>> +     select CPU_V7
>>>       select SUPPORT_SPL
>>>       select OF_CONTROL
>>
>> I think it's better to split to new architecture type for 64bit exynos platform - ARCH_EXYNOS64?
>> What do you think?
> 
> I was infact thinking to avoid adding a new ARCH type as much as
> possible and reuse ARCH_EXYNOS for 64-bit as well. Eventually, the
> code in mach-exynos has to move into respective driver folders
> (atleast for ARM64 platforms) and have as little as possible in
> mach-exynos directory.

I understood what you want.
But I think, we can reuse mach-exynos code even if we make new ARCH type.
And the cpu type should have a dependency with ARCH, not boards.
I don't believe that we should add a cpu type to every boards.
Please consider again.

Thanks,
Minkyu Kang.


More information about the U-Boot mailing list