Re: [PATCH 2/3] ARM: PRIMA2: make mach-prima2 common for all SiRF series SoC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Hi Arnd,

2012/8/21 Arnd Bergmann <arnd@xxxxxxxx>:
> On Tuesday 21 August 2012, Barry Song wrote:
>> for the moment, that is needed just because the DEBUG UART base
>> address is difficult for different SoC. debug-macro.S is very early,
>> it depends on the SIRFSOC_UART1_PA_BASE.
>>
>>  /* UART-1: used as serial debug port */
>>  #ifdef CONFIG_ARCH_PRIMA2
>> #define SIRFSOC_UART1_PA_BASE          0xb0060000
>>  #elif defined(CONFIG_ARCH_MARCO)
>> #define SIRFSOC_UART1_PA_BASE          0xcc060000
>> #endif
>> otherwise, PRIMA2 and MARCO can co-exist.
>
> Ok, I see.
>
>> i think i can find some ways to set the rp dynamically according to chip type.
>>          .macro  addruart, rp, rv, tmp
>>          ldr     \rp, =SIRFSOC_UART1_PA_BASE             @ physical
>>          ldr     \rv, =SIRFSOC_UART1_VA_BASE             @ virtual
>>          .endm
>
> The most common way to do this is to have multiple entries in
> arch/arm/Kconfig.debug in the "Kernel low-level debugging port"
> menu. For production kernels, you would just leave out DEBUG_LL
> while for debugging you have to pick one UART.

then i add these to Kconfig.debug as it is a common way

        config DEBUG_PRIMA2_UART1
                bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
                depends on ARCH_PRIMA2
                help
                  Say Y here if you want the debug print routines to direct
                  their output to UART1 serial port on SiRFprimaII devices.

        config DEBUG_MARCO_UART1
                bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
                depends on ARCH_MARCO
                help
                  Say Y here if you want the debug print routines to direct
                  their output to UART1 serial port on SiRFmarco devices.

and these in mach-prima2/include/mach/uart.h

  #ifdef CONFIG_DEBUG_PRIMA2_UART1
  #define SIRFSOC_UART1_PA_BASE          0xb0060000
  #elif defined(CONFIG_DEBUG_MARCO_UART1)
  #define SIRFSOC_UART1_PA_BASE          0xcc060000
  #endif

the above codes seem still ugly ?

>
>         Arnd

-barry

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel


[Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [PDAs]     [Linux]     [Linux MIPS]     [Yosemite Campsites]     [Photos]

Add to Google Follow linuxarm on Twitter