linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] Allow late mdesc detection, v5
@ 2010-09-01  1:07 Jeremy Kerr
  2010-09-01  1:07 ` [PATCH 1/3] arm/debug: consolidate addruart macros for CONFIG_DEBUG_ICEDCC Jeremy Kerr
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Jeremy Kerr @ 2010-09-01  1:07 UTC (permalink / raw)
  To: linux-arm-kernel

Hi all,

Currently, we probe for a mdesc early in boot. At this early stage, the
only thing we use the mdesc for is to determine the debug page mapping.

However, the debug addresses (phys and virt) need to be coded into the
addruart macro anyway; the dynamic probing is only going to tell us what
we already know.

These changes allow us to use the addruart macros to find the debug
mapping addresses, rather than pulling them out of the mdesc. This means
that the addresses are only kept in the one place, and that we don't
need the mdesc nearly as early.

The first change updates all of the addruart macros to return both
physical and virtual addresses. I've used 'rp' and 'rv' as the macro
arguments to indicate which address goes where

The second change updates the debug setup routine to use the addruart
macro to establish the debug mapping, now that we can invoke the macro
to find the phyical and virtual addresses.

This allows us to delay the requirement to have a mdesc available until
much later. For example, we can parse one from the device tree once
we've reached C code.

As they have more complex and/or new debug macros, the following platforms
could do with extra testing:
 * omap (mach-omap1 and mach-omap2)
 * davinci (done, thanks Kevin)
 * tegra

Cheers,


Jeremy

v5:
 * Add handing for !CONFIG_MMU

v4:
 * updates for 2.6.36
 * add changes for tegra
 * update davinci
 * include fixes for omap[12]
 * drop mdesc changes

v3:
 * only establish page mapping if !DEBUG_ICEDCC

v2:
 * return both phys and virt addresses from addruart
 * mask unneeded bits from uart physical address in mapping setup
 * remove io_pg_offst and phys_io, in a separate patch

---
Jeremy Kerr (3):
      arm/debug: consolidate addruart macros for CONFIG_DEBUG_ICEDCC
      arm: return both physical and virtual addresses from addruart
      arm: use addruart macro to establish debug mappings

^ permalink raw reply	[flat|nested] 14+ messages in thread
* [PATCH 0/3] Allow late mdesc detection, v4
@ 2010-08-23  8:50 Jeremy Kerr
  2010-08-23  8:50 ` [PATCH 2/3] arm: return both physical and virtual addresses from addruart Jeremy Kerr
  0 siblings, 1 reply; 14+ messages in thread
From: Jeremy Kerr @ 2010-08-23  8:50 UTC (permalink / raw)
  To: linux-arm-kernel

Hi all,

Currently, we probe for a mdesc early in boot. At this early stage, the
only thing we use the mdesc for is to determine the debug page mapping.

However, the debug addresses (phys and virt) need to be coded into the
addruart macro anyway; the dynamic probing is only going to tell us what
we already know.

These changes allow us to use the addruart macros to find the debug
mapping addresses, rather than pulling them out of the mdesc. This means
that the addresses are only kept in the one place, and that we don't
need the mdesc nearly as early.

The first change updates all of the addruart macros to return both
physical and virtual addresses. I've used 'rp' and 'rv' as the macro
arguments to indicate which address goes where

The second change updates the debug setup routine to use the addruart
macro to establish the debug mapping, now that we can invoke the macro
to find the phyical and virtual addresses.

This allows us to delay the requirement to have a mdesc available until
much later. For example, we can parse one from the device tree once
we've reached C code.

As they have more complex and/or new debug macros, the following platforms
could do with extra testing:
 * omap (mach-omap1 and mach-omap2)
 * davinci
 * tegra

Cheers,


Jeremy

v4:
 * updates for 2.6.36
 * add changes for tegra
 * update davinci
 * include fixes for omap[12]
 * drop mdesc changes

v3:
 * only establish page mapping if !DEBUG_ICEDCC

v2:
 * return both phys and virt addresses from addruart
 * mask unneeded bits from uart physical address in mapping setup
 * remove io_pg_offst and phys_io, in a separate patch

---
Jeremy Kerr (3):
      arm/debug: consolidate addruart macros for CONFIG_DEBUG_ICEDCC
      arm: return both physical and virtual addresses from addruart
      arm: use addruart macro to establish debug mappings

^ permalink raw reply	[flat|nested] 14+ messages in thread
* [PATCH 0/3] Allow late mdesc detection, v3
@ 2010-07-30  9:22 Jeremy Kerr
  2010-07-30  9:22 ` [PATCH 2/3] arm: return both physical and virtual addresses from addruart Jeremy Kerr
  0 siblings, 1 reply; 14+ messages in thread
From: Jeremy Kerr @ 2010-07-30  9:22 UTC (permalink / raw)
  To: linux-arm-kernel

Hi all,

Currently, we probe for a mdesc early in boot. At this early stage, the
only thing we use the mdesc for is to determine the debug page mapping.

However, the debug addresses (phys and virt) need to be coded into the
addruart macro anyway; the dynamic probing is only going to tell us what
we already know.

These changes allow us to use the addruart macros to find the debug
mapping addresses, rather than pulling them out of the mdesc. This means
that the addresses are only kept in the one place, and that we don't
need the mdesc nearly as early.

The first change updates all of the addruart macros to return both
physical and virtual addresses. I've used 'rp' and 'rv' as the macro
arguments to indicate which address goes where

The second change updates the debug setup routine to use the addruart
macro to establish the debug mapping, now that we can invoke the macro
to find the phyical and virtual addresses.

This allows us to delay the requirement to have a mdesc available until
much later. For example, we can parse one from the device tree once
we've reached C code.

May break OMAP1/2, as the addruart macros are more complex on these
platforms. I'd appreciate input from OMAP folks who may well tell me
that this isn't possible.

Cheers,


Jeremy

v3:
 * only establish page mapping if !DEBUG_ICEDCC

v2:
 * return both phys and virt addresses from addruart
 * mask unneeded bits from uart physical address in mapping setup
 * remove io_pg_offst and phys_io, in a separate patch

---
Jeremy Kerr (3):
      arm/debug: consolidate addruart macros for CONFIG_DEBUG_ICEDCC
      arm: return both physical and virtual addresses from addruart
      arm: use addruart macro to establish debug mappings

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

end of thread, other threads:[~2010-10-19  7:54 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-01  1:07 [PATCH 0/3] Allow late mdesc detection, v5 Jeremy Kerr
2010-09-01  1:07 ` [PATCH 1/3] arm/debug: consolidate addruart macros for CONFIG_DEBUG_ICEDCC Jeremy Kerr
2010-09-01  1:07 ` [PATCH 2/3] arm: return both physical and virtual addresses from addruart Jeremy Kerr
2010-10-18 22:01   ` Daniel Walker
2010-10-18 22:13     ` Russell King - ARM Linux
2010-10-18 22:44       ` Daniel Walker
2010-10-19  7:54         ` Uwe Kleine-König
2010-10-18 22:30     ` Nicolas Pitre
2010-10-18 22:52       ` Daniel Walker
2010-09-01  1:07 ` [PATCH 3/3] arm: use addruart macro to establish debug mappings Jeremy Kerr
  -- strict thread matches above, loose matches on Subject: below --
2010-08-23  8:50 [PATCH 0/3] Allow late mdesc detection, v4 Jeremy Kerr
2010-08-23  8:50 ` [PATCH 2/3] arm: return both physical and virtual addresses from addruart Jeremy Kerr
2010-08-23 10:05   ` Uwe Kleine-König
2010-08-23 14:36     ` Jeremy Kerr
2010-07-30  9:22 [PATCH 0/3] Allow late mdesc detection, v3 Jeremy Kerr
2010-07-30  9:22 ` [PATCH 2/3] arm: return both physical and virtual addresses from addruart Jeremy Kerr

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).