linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* Without MACH_ option Early printk (DEBUG_LL)
@ 2012-08-31 14:54 Vaibhav Hiremath
  2012-08-31 15:52 ` Tony Lindgren
  2012-08-31 17:13 ` Russell King - ARM Linux
  0 siblings, 2 replies; 13+ messages in thread
From: Vaibhav Hiremath @ 2012-08-31 14:54 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Russell & Tony,

AM335X EVM (based on AM33XX device) only supports DT boot mode and
doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
baseport submission we had aligned that, we won't create separate EVM
options, killing the board file all-together.

Having said that, the early printk option (DEBUG_LL) is broken, the
auto-generated file "./include/generated/mach-types.h" still refers to
CONFIG_MACH_AM335XEVM option,

#ifdef CONFIG_MACH_AM335XEVM
# ifdef machine_arch_type
#  undef machine_arch_type
#  define machine_arch_type     __machine_arch_type
# else
#  define machine_arch_type     MACH_TYPE_AM335XEVM
# endif
# define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
#else
# define machine_is_am335xevm() (0)
#endif


So I am thinking of changing the config_xxx option to SOC_AM33XX or
ARCH_OMAP2PLUS, something like below,

am335xevm        SOC_AM33XX          AM335XEVM         3589

OR

am335xevm        ARCH_OMAP2PLUS      AM335XEVM         3589


Can you comment on this? Based on that I will submit the patch.

Thanks,
Vaibhav

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 14:54 Without MACH_ option Early printk (DEBUG_LL) Vaibhav Hiremath
@ 2012-08-31 15:52 ` Tony Lindgren
  2012-08-31 16:06   ` Hiremath, Vaibhav
  2012-08-31 17:13 ` Russell King - ARM Linux
  1 sibling, 1 reply; 13+ messages in thread
From: Tony Lindgren @ 2012-08-31 15:52 UTC (permalink / raw)
  To: linux-arm-kernel

* Vaibhav Hiremath <hvaibhav@ti.com> [120831 07:55]:
> Hi Russell & Tony,
> 
> AM335X EVM (based on AM33XX device) only supports DT boot mode and
> doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> baseport submission we had aligned that, we won't create separate EVM
> options, killing the board file all-together.
> 
> Having said that, the early printk option (DEBUG_LL) is broken, the
> auto-generated file "./include/generated/mach-types.h" still refers to
> CONFIG_MACH_AM335XEVM option,

The way we're heading is that the DEBUG_LL options will only work for
one hardcoded machine where you need to select the uart type and address
in Kconfig. Or just patch it in.
 
> #ifdef CONFIG_MACH_AM335XEVM
> # ifdef machine_arch_type
> #  undef machine_arch_type
> #  define machine_arch_type     __machine_arch_type
> # else
> #  define machine_arch_type     MACH_TYPE_AM335XEVM
> # endif
> # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> #else
> # define machine_is_am335xevm() (0)
> #endif
> 
> 
> So I am thinking of changing the config_xxx option to SOC_AM33XX or
> ARCH_OMAP2PLUS, something like below,
> 
> am335xevm        SOC_AM33XX          AM335XEVM         3589
> 
> OR
> 
> am335xevm        ARCH_OMAP2PLUS      AM335XEVM         3589
> 
> 
> Can you comment on this? Based on that I will submit the patch.

I think that would at minimum break things for autogenerated
mach-types.h where if only some other non-am335xevm machine is
selected (like omap-generic) things don't get optimized out any
longer as they currently do.

Regards,

Tony

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 15:52 ` Tony Lindgren
@ 2012-08-31 16:06   ` Hiremath, Vaibhav
  2012-08-31 16:11     ` Tony Lindgren
  0 siblings, 1 reply; 13+ messages in thread
From: Hiremath, Vaibhav @ 2012-08-31 16:06 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 31, 2012 at 21:22:26, Tony Lindgren wrote:
> * Vaibhav Hiremath <hvaibhav@ti.com> [120831 07:55]:
> > Hi Russell & Tony,
> > 
> > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > baseport submission we had aligned that, we won't create separate EVM
> > options, killing the board file all-together.
> > 
> > Having said that, the early printk option (DEBUG_LL) is broken, the
> > auto-generated file "./include/generated/mach-types.h" still refers to
> > CONFIG_MACH_AM335XEVM option,
> 
> The way we're heading is that the DEBUG_LL options will only work for
> one hardcoded machine where you need to select the uart type and address
> in Kconfig. Or just patch it in.
>  
> > #ifdef CONFIG_MACH_AM335XEVM
> > # ifdef machine_arch_type
> > #  undef machine_arch_type
> > #  define machine_arch_type     __machine_arch_type
> > # else
> > #  define machine_arch_type     MACH_TYPE_AM335XEVM
> > # endif
> > # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> > #else
> > # define machine_is_am335xevm() (0)
> > #endif
> > 
> > 
> > So I am thinking of changing the config_xxx option to SOC_AM33XX or
> > ARCH_OMAP2PLUS, something like below,
> > 
> > am335xevm        SOC_AM33XX          AM335XEVM         3589
> > 
> > OR
> > 
> > am335xevm        ARCH_OMAP2PLUS      AM335XEVM         3589
> > 
> > 
> > Can you comment on this? Based on that I will submit the patch.
> 
> I think that would at minimum break things for autogenerated
> mach-types.h where if only some other non-am335xevm machine is
> selected (like omap-generic) things don't get optimized out any
> longer as they currently do.
> 

Agreed. In that case the first option should work here, right?

Thanks,
Vaibhav

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 16:06   ` Hiremath, Vaibhav
@ 2012-08-31 16:11     ` Tony Lindgren
  2012-08-31 16:37       ` Hiremath, Vaibhav
  2012-08-31 16:47       ` Hiremath, Vaibhav
  0 siblings, 2 replies; 13+ messages in thread
From: Tony Lindgren @ 2012-08-31 16:11 UTC (permalink / raw)
  To: linux-arm-kernel

* Hiremath, Vaibhav <hvaibhav@ti.com> [120831 09:06]:
> On Fri, Aug 31, 2012 at 21:22:26, Tony Lindgren wrote:
> > * Vaibhav Hiremath <hvaibhav@ti.com> [120831 07:55]:
> > > Hi Russell & Tony,
> > > 
> > > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > > baseport submission we had aligned that, we won't create separate EVM
> > > options, killing the board file all-together.
> > > 
> > > Having said that, the early printk option (DEBUG_LL) is broken, the
> > > auto-generated file "./include/generated/mach-types.h" still refers to
> > > CONFIG_MACH_AM335XEVM option,
> > 
> > The way we're heading is that the DEBUG_LL options will only work for
> > one hardcoded machine where you need to select the uart type and address
> > in Kconfig. Or just patch it in.
> >  
> > > #ifdef CONFIG_MACH_AM335XEVM
> > > # ifdef machine_arch_type
> > > #  undef machine_arch_type
> > > #  define machine_arch_type     __machine_arch_type
> > > # else
> > > #  define machine_arch_type     MACH_TYPE_AM335XEVM
> > > # endif
> > > # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> > > #else
> > > # define machine_is_am335xevm() (0)
> > > #endif
> > > 
> > > 
> > > So I am thinking of changing the config_xxx option to SOC_AM33XX or
> > > ARCH_OMAP2PLUS, something like below,
> > > 
> > > am335xevm        SOC_AM33XX          AM335XEVM         3589
> > > 
> > > OR
> > > 
> > > am335xevm        ARCH_OMAP2PLUS      AM335XEVM         3589
> > > 
> > > 
> > > Can you comment on this? Based on that I will submit the patch.
> > 
> > I think that would at minimum break things for autogenerated
> > mach-types.h where if only some other non-am335xevm machine is
> > selected (like omap-generic) things don't get optimized out any
> > longer as they currently do.
> > 
> 
> Agreed. In that case the first option should work here, right?

It gets messy if we start mixing mach and soc defines there..

How about just add a hidden Kconfig option to mach-omap2/Kconfig 
that always selects MACH_TYPE_AM335XEVM if SOC_AM33XX is set?
Or does that require that MACHINE_START is there as well?

Regards,

Tony

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 16:11     ` Tony Lindgren
@ 2012-08-31 16:37       ` Hiremath, Vaibhav
  2012-08-31 16:47       ` Hiremath, Vaibhav
  1 sibling, 0 replies; 13+ messages in thread
From: Hiremath, Vaibhav @ 2012-08-31 16:37 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 31, 2012 at 21:41:22, Tony Lindgren wrote:
> * Hiremath, Vaibhav <hvaibhav@ti.com> [120831 09:06]:
> > On Fri, Aug 31, 2012 at 21:22:26, Tony Lindgren wrote:
> > > * Vaibhav Hiremath <hvaibhav@ti.com> [120831 07:55]:
> > > > Hi Russell & Tony,
> > > > 
> > > > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > > > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > > > baseport submission we had aligned that, we won't create separate EVM
> > > > options, killing the board file all-together.
> > > > 
> > > > Having said that, the early printk option (DEBUG_LL) is broken, the
> > > > auto-generated file "./include/generated/mach-types.h" still refers to
> > > > CONFIG_MACH_AM335XEVM option,
> > > 
> > > The way we're heading is that the DEBUG_LL options will only work for
> > > one hardcoded machine where you need to select the uart type and address
> > > in Kconfig. Or just patch it in.
> > >  
> > > > #ifdef CONFIG_MACH_AM335XEVM
> > > > # ifdef machine_arch_type
> > > > #  undef machine_arch_type
> > > > #  define machine_arch_type     __machine_arch_type
> > > > # else
> > > > #  define machine_arch_type     MACH_TYPE_AM335XEVM
> > > > # endif
> > > > # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> > > > #else
> > > > # define machine_is_am335xevm() (0)
> > > > #endif
> > > > 
> > > > 
> > > > So I am thinking of changing the config_xxx option to SOC_AM33XX or
> > > > ARCH_OMAP2PLUS, something like below,
> > > > 
> > > > am335xevm        SOC_AM33XX          AM335XEVM         3589
> > > > 
> > > > OR
> > > > 
> > > > am335xevm        ARCH_OMAP2PLUS      AM335XEVM         3589
> > > > 
> > > > 
> > > > Can you comment on this? Based on that I will submit the patch.
> > > 
> > > I think that would at minimum break things for autogenerated
> > > mach-types.h where if only some other non-am335xevm machine is
> > > selected (like omap-generic) things don't get optimized out any
> > > longer as they currently do.
> > > 
> > 
> > Agreed. In that case the first option should work here, right?
> 
> It gets messy if we start mixing mach and soc defines there..
> 
> How about just add a hidden Kconfig option to mach-omap2/Kconfig 
> that always selects MACH_TYPE_AM335XEVM if SOC_AM33XX is set?

Great, this is what I had in my mind but since it is hidden option I thought 
may not be right thing to do.
I was just thinking in the direction that, it should be logical and fine if 
SOC_AM33XX is used for all AM33xx based machines, isn't it?

Anyway, I think we are on same page here, I will add it and submit the patch 
ASAP.

> Or does that require that MACHINE_START is there as well?
> 

I do not think so, they are not related to each other, this option is 
required only during decompression.
I have tested it on BeagleBone and it is working.

Thanks,
Vaibhav


> Regards,
> 
> Tony
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 16:11     ` Tony Lindgren
  2012-08-31 16:37       ` Hiremath, Vaibhav
@ 2012-08-31 16:47       ` Hiremath, Vaibhav
  2012-08-31 17:06         ` Tony Lindgren
  1 sibling, 1 reply; 13+ messages in thread
From: Hiremath, Vaibhav @ 2012-08-31 16:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 31, 2012 at 22:07:37, Hiremath, Vaibhav wrote:
> On Fri, Aug 31, 2012 at 21:41:22, Tony Lindgren wrote:
> > * Hiremath, Vaibhav <hvaibhav@ti.com> [120831 09:06]:
> > > On Fri, Aug 31, 2012 at 21:22:26, Tony Lindgren wrote:
> > > > * Vaibhav Hiremath <hvaibhav@ti.com> [120831 07:55]:
> > > > > Hi Russell & Tony,
> > > > > 
> > > > > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > > > > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > > > > baseport submission we had aligned that, we won't create separate EVM
> > > > > options, killing the board file all-together.
> > > > > 
> > > > > Having said that, the early printk option (DEBUG_LL) is broken, the
> > > > > auto-generated file "./include/generated/mach-types.h" still refers to
> > > > > CONFIG_MACH_AM335XEVM option,
> > > > 
> > > > The way we're heading is that the DEBUG_LL options will only work for
> > > > one hardcoded machine where you need to select the uart type and address
> > > > in Kconfig. Or just patch it in.
> > > >  
> > > > > #ifdef CONFIG_MACH_AM335XEVM
> > > > > # ifdef machine_arch_type
> > > > > #  undef machine_arch_type
> > > > > #  define machine_arch_type     __machine_arch_type
> > > > > # else
> > > > > #  define machine_arch_type     MACH_TYPE_AM335XEVM
> > > > > # endif
> > > > > # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> > > > > #else
> > > > > # define machine_is_am335xevm() (0)
> > > > > #endif
> > > > > 
> > > > > 
> > > > > So I am thinking of changing the config_xxx option to SOC_AM33XX or
> > > > > ARCH_OMAP2PLUS, something like below,
> > > > > 
> > > > > am335xevm        SOC_AM33XX          AM335XEVM         3589
> > > > > 
> > > > > OR
> > > > > 
> > > > > am335xevm        ARCH_OMAP2PLUS      AM335XEVM         3589
> > > > > 
> > > > > 
> > > > > Can you comment on this? Based on that I will submit the patch.
> > > > 
> > > > I think that would at minimum break things for autogenerated
> > > > mach-types.h where if only some other non-am335xevm machine is
> > > > selected (like omap-generic) things don't get optimized out any
> > > > longer as they currently do.
> > > > 
> > > 
> > > Agreed. In that case the first option should work here, right?
> > 
> > It gets messy if we start mixing mach and soc defines there..
> > 
> > How about just add a hidden Kconfig option to mach-omap2/Kconfig 
> > that always selects MACH_TYPE_AM335XEVM if SOC_AM33XX is set?
> 
> Great, this is what I had in my mind but since it is hidden option I thought 
> may not be right thing to do.
> I was just thinking in the direction that, it should be logical and fine if 
> SOC_AM33XX is used for all AM33xx based machines, isn't it?
> 
> Anyway, I think we are on same page here, I will add it and submit the patch 
> ASAP.
> 
> > Or does that require that MACHINE_START is there as well?
> > 
> 
> I do not think so, they are not related to each other, this option is 
> required only during decompression.
> I have tested it on BeagleBone and it is working.
> 

Can you please review below patch? If you think its ok, I will send the 
patch -


diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index fccbdf0..eccafb4 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -104,6 +104,9 @@ config SOC_AM33XX
        select CPU_V7
        select ARM_CPU_SUSPEND if PM
        select MULTI_IRQ_HANDLER
+       select MACH_AM335XEVM
+       select MACH_AM335XIAEVM
+       select MACH_TAM335X

 config OMAP_PACKAGE_ZAF
        bool
@@ -140,6 +143,15 @@ config MACH_OMAP_GENERIC
          Support for generic TI OMAP2+ boards using Flattened Device Tree.
          More information at Documentation/devicetree

+config MACH_AM335XEVM
+       bool
+
+config MACH_AM335XIAEVM
+       bool
+
+config MACH_TAM335X
+       bool
+
 config MACH_OMAP2_TUSB6010
        bool
        depends on ARCH_OMAP2 && SOC_OMAP2420

Thanks,
Vaibhav

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 16:47       ` Hiremath, Vaibhav
@ 2012-08-31 17:06         ` Tony Lindgren
  0 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2012-08-31 17:06 UTC (permalink / raw)
  To: linux-arm-kernel

* Hiremath, Vaibhav <hvaibhav@ti.com> [120831 09:47]:
> > On Fri, Aug 31, 2012 at 21:41:22, Tony Lindgren wrote:
> 
> Can you please review below patch? If you think its ok, I will send the 
> patch -

Yeah thanks looks OK to me, at least I can't think of better options for now.

Regards,

Tony
 
 
> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
> index fccbdf0..eccafb4 100644
> --- a/arch/arm/mach-omap2/Kconfig
> +++ b/arch/arm/mach-omap2/Kconfig
> @@ -104,6 +104,9 @@ config SOC_AM33XX
>         select CPU_V7
>         select ARM_CPU_SUSPEND if PM
>         select MULTI_IRQ_HANDLER
> +       select MACH_AM335XEVM
> +       select MACH_AM335XIAEVM
> +       select MACH_TAM335X
> 
>  config OMAP_PACKAGE_ZAF
>         bool
> @@ -140,6 +143,15 @@ config MACH_OMAP_GENERIC
>           Support for generic TI OMAP2+ boards using Flattened Device Tree.
>           More information at Documentation/devicetree
> 
> +config MACH_AM335XEVM
> +       bool
> +
> +config MACH_AM335XIAEVM
> +       bool
> +
> +config MACH_TAM335X
> +       bool
> +
>  config MACH_OMAP2_TUSB6010
>         bool
>         depends on ARCH_OMAP2 && SOC_OMAP2420
> 
> Thanks,
> Vaibhav

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 14:54 Without MACH_ option Early printk (DEBUG_LL) Vaibhav Hiremath
  2012-08-31 15:52 ` Tony Lindgren
@ 2012-08-31 17:13 ` Russell King - ARM Linux
  2012-08-31 17:23   ` Hiremath, Vaibhav
  1 sibling, 1 reply; 13+ messages in thread
From: Russell King - ARM Linux @ 2012-08-31 17:13 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 31, 2012 at 08:24:51PM +0530, Vaibhav Hiremath wrote:
> Hi Russell & Tony,
> 
> AM335X EVM (based on AM33XX device) only supports DT boot mode and
> doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> baseport submission we had aligned that, we won't create separate EVM
> options, killing the board file all-together.
> 
> Having said that, the early printk option (DEBUG_LL) is broken, the
> auto-generated file "./include/generated/mach-types.h" still refers to
> CONFIG_MACH_AM335XEVM option,
> 
> #ifdef CONFIG_MACH_AM335XEVM
> # ifdef machine_arch_type
> #  undef machine_arch_type
> #  define machine_arch_type     __machine_arch_type
> # else
> #  define machine_arch_type     MACH_TYPE_AM335XEVM
> # endif
> # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> #else
> # define machine_is_am335xevm() (0)
> #endif

machine types are entirely meaningless for DT based systems.

> Can you comment on this? Based on that I will submit the patch.

Pointless.  You can't use machine_is_am335xevm() when you're using DT.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 17:13 ` Russell King - ARM Linux
@ 2012-08-31 17:23   ` Hiremath, Vaibhav
  2012-08-31 18:23     ` Nicolas Pitre
  0 siblings, 1 reply; 13+ messages in thread
From: Hiremath, Vaibhav @ 2012-08-31 17:23 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 31, 2012 at 22:43:36, Russell King - ARM Linux wrote:
> On Fri, Aug 31, 2012 at 08:24:51PM +0530, Vaibhav Hiremath wrote:
> > Hi Russell & Tony,
> > 
> > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > baseport submission we had aligned that, we won't create separate EVM
> > options, killing the board file all-together.
> > 
> > Having said that, the early printk option (DEBUG_LL) is broken, the
> > auto-generated file "./include/generated/mach-types.h" still refers to
> > CONFIG_MACH_AM335XEVM option,
> > 
> > #ifdef CONFIG_MACH_AM335XEVM
> > # ifdef machine_arch_type
> > #  undef machine_arch_type
> > #  define machine_arch_type     __machine_arch_type
> > # else
> > #  define machine_arch_type     MACH_TYPE_AM335XEVM
> > # endif
> > # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> > #else
> > # define machine_is_am335xevm() (0)
> > #endif
> 
> machine types are entirely meaningless for DT based systems.
> 
> > Can you comment on this? Based on that I will submit the patch.
> 
> Pointless.  You can't use machine_is_am335xevm() when you're using DT.
> 

They how do you recommend to resolve early prink issue (required during 
decompression)?

Thanks,
Vaibhav

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 17:23   ` Hiremath, Vaibhav
@ 2012-08-31 18:23     ` Nicolas Pitre
  2012-09-03  4:27       ` Mohammed, Afzal
  0 siblings, 1 reply; 13+ messages in thread
From: Nicolas Pitre @ 2012-08-31 18:23 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 31 Aug 2012, Hiremath, Vaibhav wrote:

> On Fri, Aug 31, 2012 at 22:43:36, Russell King - ARM Linux wrote:
> > On Fri, Aug 31, 2012 at 08:24:51PM +0530, Vaibhav Hiremath wrote:
> > > Hi Russell & Tony,
> > > 
> > > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > > baseport submission we had aligned that, we won't create separate EVM
> > > options, killing the board file all-together.
> > > 
> > > Having said that, the early printk option (DEBUG_LL) is broken, the
> > > auto-generated file "./include/generated/mach-types.h" still refers to
> > > CONFIG_MACH_AM335XEVM option,
> > > 
> > > #ifdef CONFIG_MACH_AM335XEVM
> > > # ifdef machine_arch_type
> > > #  undef machine_arch_type
> > > #  define machine_arch_type     __machine_arch_type
> > > # else
> > > #  define machine_arch_type     MACH_TYPE_AM335XEVM
> > > # endif
> > > # define machine_is_am335xevm() (machine_arch_type == MACH_TYPE_AM335XEVM)
> > > #else
> > > # define machine_is_am335xevm() (0)
> > > #endif
> > 
> > machine types are entirely meaningless for DT based systems.
> > 
> > > Can you comment on this? Based on that I will submit the patch.
> > 
> > Pointless.  You can't use machine_is_am335xevm() when you're using DT.
> > 
> 
> They how do you recommend to resolve early prink issue (required during 
> decompression)?

Right now the best you can do is to have empty stubs that display 
nothing.


Nicolas

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-08-31 18:23     ` Nicolas Pitre
@ 2012-09-03  4:27       ` Mohammed, Afzal
  2012-09-04  2:04         ` Nicolas Pitre
  0 siblings, 1 reply; 13+ messages in thread
From: Mohammed, Afzal @ 2012-09-03  4:27 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

On Fri, Aug 31, 2012 at 23:53:32, Nicolas Pitre wrote:
> On Fri, 31 Aug 2012, Hiremath, Vaibhav wrote:
> > On Fri, Aug 31, 2012 at 22:43:36, Russell King - ARM Linux wrote:
> > > On Fri, Aug 31, 2012 at 08:24:51PM +0530, Vaibhav Hiremath wrote:

> > > > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > > > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > > > baseport submission we had aligned that, we won't create separate EVM
> > > > options, killing the board file all-together.
> > > > 
> > > > Having said that, the early printk option (DEBUG_LL) is broken, the
> > > > auto-generated file "./include/generated/mach-types.h" still refers to
> > > > CONFIG_MACH_AM335XEVM option,
> > > machine types are entirely meaningless for DT based systems.
> > > 
> > > > Can you comment on this? Based on that I will submit the patch.
> > > 
> > > Pointless.  You can't use machine_is_am335xevm() when you're using DT.
> > > 
> > 
> > They how do you recommend to resolve early prink issue (required during 
> > decompression)?
> 
> Right now the best you can do is to have empty stubs that display 
> nothing.

Won't having compile time selection of debug uart over machine based
runtime detection help here ?

Regards
Afzal

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-09-03  4:27       ` Mohammed, Afzal
@ 2012-09-04  2:04         ` Nicolas Pitre
  2012-09-04  4:27           ` Hiremath, Vaibhav
  0 siblings, 1 reply; 13+ messages in thread
From: Nicolas Pitre @ 2012-09-04  2:04 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, 3 Sep 2012, Mohammed, Afzal wrote:

> Hi,
> 
> On Fri, Aug 31, 2012 at 23:53:32, Nicolas Pitre wrote:
> > On Fri, 31 Aug 2012, Hiremath, Vaibhav wrote:
> > > On Fri, Aug 31, 2012 at 22:43:36, Russell King - ARM Linux wrote:
> > > > On Fri, Aug 31, 2012 at 08:24:51PM +0530, Vaibhav Hiremath wrote:
> 
> > > > > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > > > > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > > > > baseport submission we had aligned that, we won't create separate EVM
> > > > > options, killing the board file all-together.
> > > > > 
> > > > > Having said that, the early printk option (DEBUG_LL) is broken, the
> > > > > auto-generated file "./include/generated/mach-types.h" still refers to
> > > > > CONFIG_MACH_AM335XEVM option,
> > > > machine types are entirely meaningless for DT based systems.
> > > > 
> > > > > Can you comment on this? Based on that I will submit the patch.
> > > > 
> > > > Pointless.  You can't use machine_is_am335xevm() when you're using DT.
> > > > 
> > > 
> > > They how do you recommend to resolve early prink issue (required during 
> > > decompression)?
> > 
> > Right now the best you can do is to have empty stubs that display 
> > nothing.
> 
> Won't having compile time selection of debug uart over machine based
> runtime detection help here ?

It certainly would.  But then your kernel won't run on anything but the 
specific machine for which the compile time UART selection was made.  As 
soon as you have more than one possible UART config for the set of 
machines you want your kernel binary to run on, you'll have to give up 
on the early output during kernel decompression.


Nicolas

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Without MACH_ option Early printk (DEBUG_LL)
  2012-09-04  2:04         ` Nicolas Pitre
@ 2012-09-04  4:27           ` Hiremath, Vaibhav
  0 siblings, 0 replies; 13+ messages in thread
From: Hiremath, Vaibhav @ 2012-09-04  4:27 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Sep 04, 2012 at 07:34:21, Nicolas Pitre wrote:
> On Mon, 3 Sep 2012, Mohammed, Afzal wrote:
> 
> > Hi,
> > 
> > On Fri, Aug 31, 2012 at 23:53:32, Nicolas Pitre wrote:
> > > On Fri, 31 Aug 2012, Hiremath, Vaibhav wrote:
> > > > On Fri, Aug 31, 2012 at 22:43:36, Russell King - ARM Linux wrote:
> > > > > On Fri, Aug 31, 2012 at 08:24:51PM +0530, Vaibhav Hiremath wrote:
> > 
> > > > > > AM335X EVM (based on AM33XX device) only supports DT boot mode and
> > > > > > doesn't have CONFIG_MACH_AM335XEVM option defined. Some time back during
> > > > > > baseport submission we had aligned that, we won't create separate EVM
> > > > > > options, killing the board file all-together.
> > > > > > 
> > > > > > Having said that, the early printk option (DEBUG_LL) is broken, the
> > > > > > auto-generated file "./include/generated/mach-types.h" still refers to
> > > > > > CONFIG_MACH_AM335XEVM option,
> > > > > machine types are entirely meaningless for DT based systems.
> > > > > 
> > > > > > Can you comment on this? Based on that I will submit the patch.
> > > > > 
> > > > > Pointless.  You can't use machine_is_am335xevm() when you're using DT.
> > > > > 
> > > > 
> > > > They how do you recommend to resolve early prink issue (required during 
> > > > decompression)?
> > > 
> > > Right now the best you can do is to have empty stubs that display 
> > > nothing.
> > 
> > Won't having compile time selection of debug uart over machine based
> > runtime detection help here ?
> 
> It certainly would.  But then your kernel won't run on anything but the 
> specific machine for which the compile time UART selection was made.  As 
> soon as you have more than one possible UART config for the set of 
> machines you want your kernel binary to run on, you'll have to give up 
> on the early output during kernel decompression.
> 
> 

Yes, I understand that, here at this early stage things are very tricky and 
difficult to handle.

Yeah certainly we can ignore this and give up on early output, but just 
would like to make sure that we explore all options and drop it.

Isn't defining something below should solve the purpose, without breaking 
anything,

am335xevm        SOC_AM33XX          AM335XEVM         3589

It just says, AM33XX based machines (AM335XEVM, Bone and others) depends on
CONFIG_SOC_AM33XX. Does it break anything? May be I am missing something 
here.

Also, I was looking at some other platforms and architectures, some of them 
are trying to detect the uart port runtime, by checking for,

	- Which UART is enabled/clocked (most likely by bootloader)?
	- Does it configured or brought out of reset?

This brings-in more complexity at this early stage and not sure we really 
should go down to this patch, assuming the various flavors of devices and 
architectures we have currently.


Thanks,
Vaibhav

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2012-09-04  4:27 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-31 14:54 Without MACH_ option Early printk (DEBUG_LL) Vaibhav Hiremath
2012-08-31 15:52 ` Tony Lindgren
2012-08-31 16:06   ` Hiremath, Vaibhav
2012-08-31 16:11     ` Tony Lindgren
2012-08-31 16:37       ` Hiremath, Vaibhav
2012-08-31 16:47       ` Hiremath, Vaibhav
2012-08-31 17:06         ` Tony Lindgren
2012-08-31 17:13 ` Russell King - ARM Linux
2012-08-31 17:23   ` Hiremath, Vaibhav
2012-08-31 18:23     ` Nicolas Pitre
2012-09-03  4:27       ` Mohammed, Afzal
2012-09-04  2:04         ` Nicolas Pitre
2012-09-04  4:27           ` Hiremath, Vaibhav

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).