linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/4] omap: Make uncompress code and DEBUG_LL code generic, v2
Date: Sat, 23 Jan 2010 09:13:17 -0800	[thread overview]
Message-ID: <20100123171317.GA6836@atomide.com> (raw)
In-Reply-To: <FCCFB4CDC6E5564B9182F639FC35608703007F2340@dbde02.ent.ti.com>

* Pandita, Vikram <vikram.pandita@ti.com> [100122 15:08]:
> Tony
> 
> >-----Original Message-----
> >From: Tony Lindgren [mailto:tony at atomide.com]
> >Sent: Friday, January 22, 2010 3:11 PM
> >To: Pandita, Vikram
> >Cc: Russell King - ARM Linux; linux-arm-kernel at lists.infradead.org; linux-omap at vger.kernel.org
> >Subject: Re: [PATCH 2/4] omap: Make uncompress code and DEBUG_LL code generic, v2
> >
> >* Pandita, Vikram <vikram.pandita@ti.com> [100122 12:56]:
> >>
> >>
> >> >-----Original Message-----
> >> >From: Tony Lindgren [mailto:tony at atomide.com]
> >> >Sent: Friday, January 22, 2010 2:55 PM
> >> >To: Pandita, Vikram
> >> >Cc: Russell King - ARM Linux; linux-arm-kernel at lists.infradead.org; linux-omap at vger.kernel.org
> >> >Subject: Re: [PATCH 2/4] omap: Make uncompress code and DEBUG_LL code generic, v2
> >> >
> >> >* Pandita, Vikram <vikram.pandita@ti.com> [100122 06:46]:
> >> >> >
> >> >> >OK, I've added that too, but for mach-omap2 only. I've also
> >> >> >added an experimental zoom2/3 support.
> >> >> >
> >> >> >Care to take try it out and see what happens on a zoom?
> >> >>
> >> >> Test on zoom3 failed with multi-omap branch.
> >> >> Debugging the same, should have a zoom correction patch out today.
> >> >
> >> >Heh OK. I just pushed more updates into the multi-omap branch
> >> >if you want to try to boot zoom2/zoom3 using the same .config.
> >>
> >> Refreshed my tree and I don't see your patches yet.
> >
> >Takes a few minutes to get mirrored from master.kernel.org..
> 
> Yes I tried with new branch and zoom2/3 does not work.
> Root cause: 
> There is a very basic issue in low level code.
> 
> We are allowed to create only one Physical to Virtual mapping using MACHINE_START() phys_io and io_pg_offst of size 0x100000(1MB).
> 
> Now for zoom2/3 we need to do following:
> MACHINE_START(OMAP_ZOOM3, "OMAP Zoom3 board")
> -       .phys_io        = 0x48000000,
> -       .io_pg_offst    = ((0xfa000000) >> 18) & 0xfffc,
> +       .phys_io        = 0x1000000, /*ZOOM_UART_BASE*/
> +       .io_pg_offst    = ((0xfb000000) >> 18) & 0xfffc, /*ZOOM_UART_VIRT*/
>         .boot_params    = 0x80000100,
>         .map_io         = omap_zoom_map_io,
>         .init_irq       = omap_zoom_init_irq,
> 
> This will create mapping:
> 0x1000000 <-> 0xfb000000 of 1MB
> 
> Now that leaves the phy address 0x4800000 omap register mapping, unmapped.

Right, we really need 0x48000000 mapped :)
 
> So the code to get scratchpad contents will abort:
> arch/arm/mach-omap2/include/mach/debug-macro.S
> 	moveq   \rx, #0x48000000        @ physical base address
> 	movne   \rx, #0xfa000000        @ virtual base
> 	orr     \rx, \rx, #0x0006a000   @ uart1 on omap2/3/4
> 
> 
> This seems to be a basic limitation of low level code and I have not clue how to circumvent this.
> Thoughts?

Please take a look at arch/arm/kernel/head.S where you can add
the extra mapping early on.

Hmm, I wonder if we cand nowadays do the extra mapping for zoom
external uart in arch/arm/kernel/early_printk.c?

Are you getting anything out of the zoom uart before MMU is
enabled?

To test this you can temporarily break your kernel by commenting
out the start_kernel line in head-common.S. Then the code falls
through to __error_p and prints out a processor error..

Regards,

Tony

  reply	other threads:[~2010-01-23 17:13 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-16  1:35 [PATCH 0/4] omap multiboot improvments for merge window after 2.6.34 Tony Lindgren
2010-01-16  1:35 ` [PATCH 1/4] omap: Clean the serial port defines Tony Lindgren
2010-01-16  7:48   ` Shilimkar, Santosh
2010-01-16 19:25     ` Tony Lindgren
2010-01-16 19:33       ` Shilimkar, Santosh
2010-01-16 20:03         ` Tony Lindgren
2010-01-19  0:39   ` Pandita, Vikram
2010-01-20 23:10     ` Tony Lindgren
2010-01-16  1:35 ` [PATCH 2/4] omap: Make uncompress code and DEBUG_LL code generic Tony Lindgren
2010-01-16  9:35   ` Russell King - ARM Linux
2010-01-16 19:18     ` Tony Lindgren
2010-01-16 19:33       ` Russell King - ARM Linux
2010-01-16 20:00         ` Tony Lindgren
2010-01-19  1:50           ` Pandita, Vikram
2010-01-22  3:07             ` [PATCH 2/4] omap: Make uncompress code and DEBUG_LL code generic, v2 Tony Lindgren
2010-01-22 14:48               ` Pandita, Vikram
2010-01-22 20:55                 ` Tony Lindgren
2010-01-22 20:58                   ` Pandita, Vikram
2010-01-22 21:10                     ` Tony Lindgren
2010-01-22 23:10                       ` Pandita, Vikram
2010-01-23 17:13                         ` Tony Lindgren [this message]
2010-01-21 19:03         ` [PATCH 2/4] omap: Make uncompress code and DEBUG_LL code generic Tony Lindgren
2010-01-16 11:04   ` Shilimkar, Santosh
2010-01-16 19:20     ` Tony Lindgren
2010-01-16 19:34       ` Shilimkar, Santosh
2010-01-19  1:26   ` Pandita, Vikram
2010-01-19 17:19     ` Kevin Hilman
2010-01-26 17:22     ` Tony Lindgren
2010-01-16  1:35 ` [PATCH 3/4] omap: Remove old DEBUG_LL serial port options Tony Lindgren
2010-01-16  1:35 ` [PATCH 4/4] omap: Make get_irqnr_and_base common for mach-omap2 multiboot Tony Lindgren
2010-01-16 11:24   ` Shilimkar, Santosh
2010-01-16 11:55   ` Russell King - ARM Linux
2010-01-16 19:12     ` Tony Lindgren
2010-01-22 20:39     ` [PATCH 4/4] omap: Make get_irqnr_and_base common for mach-omap2 multiboot, v2 Tony Lindgren
2010-01-22 20:56       ` Russell King - ARM Linux
2010-01-22 21:09         ` Tony Lindgren
2010-01-22 21:16           ` Tony Lindgren
2010-01-16 20:15 ` [PATCH 0/4] omap multiboot improvments for merge window after 2.6.34 Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100123171317.GA6836@atomide.com \
    --to=tony@atomide.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).