Subject: Re: [MPC7448] machdep_calls

From: Benjamin Herrenschmidt <[email-masked]>
Date: Tue, 19 Aug 2008 17:27:43 +1000

On Tue, 2008-08-19 at 09:00 +0200, Sébastien Chrétien wrote:
> I have no screen that's why I have to use UART. I followed the CPM
> model in head_32.S : 
> #ifdef CONFIG_PPC_EARLY_DEBUG_CPM
> setup_cpm_bat:
>     lis    r8, 0xf000
>     ori    r8, r8,    0x002a
>     mtspr    SPRN_DBAT1L, r8
> 
>     lis    r11, 0xf000
>     ori    r11, r11, (BL_1M << 2) | 2
>     mtspr    SPRN_DBAT1U, r11
> 
>     blr
> #endif

The "EARLY DEBUG" stuff is a pile of hacks to help with bringup,
it's definitely not a long term solution to your problems.

You may also want to look at Grant Likely's work on doing proper
early ioremap using BATs.

> With this code  I can use udbg.
> 
> According to you, what is the best way ?

The above is fine for early debug console. But that's definitely
not the only kind of thing you may want to put in your setup_arch()...
Look at what others do. 

Ben.

> 2008/8/18, Benjamin Herrenschmidt <[email-masked]>:
>         On Mon, 2008-08-18 at 16:17 +0200, Sébastien Chrétien wrote:
>         > The mpc7448hpc2 uses a tsi108-bridge. My board uses an IP on
>         a FPGA..
>         > I read the code of mpc7448_hpc2.c.
>         > It uses a ioremap in order to iniatilize the tsi108
>         registers. But I
>         > have already initialized MMU with my registers in HEAD_32.S.
>         Do I need
>         > to use ioremap in setup_arch() ?
>         
>         
>         Why did you hack head_32.S ? You shouldn't do that... This is
>         common
>         code, not platform code.
>         
>         Ben.
>         
>         >
>         >
>         >
>         > 2008/8/18, Michael Ellerman <[email-masked]>:
>         >         On Mon, 2008-08-18 at 13:35 +0200, Sébastien
>         Chrétien wrote:
>         >         > Can somebody explain me the aim of the
>         >         function  "setup_arch" in the
>         >         > machine_call structure ?
>         >
>         >
>         >         Is this MPC7448 anything like an mpc7448hpc2 ?
>         >
>         >         If so maybe you should start by looking at the code
>         for it in:
>         >
>         >         arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c
>         >
>         >         Even if it's not related, that will give you some
>         idea of what
>         >         the
>         >         callbacks are for.
>         >
>         >         cheers
>         >
>         >         --
>         >         Michael Ellerman
>         >         OzLabs, IBM Australia Development Lab
>         >
>         >         wwweb: http://michael.ellerman.id.au
>         >         phone: +61 2 6212 1183 (tie line 70 21183)
>         >
>         >         We do not inherit the earth from our ancestors,
>         >         we borrow it from our children. - S.M.A.R.T Person
>         >
>         >
>         
>