All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ccool <ccool@ninjatech.biz>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] Re: Problem building U-boot for RpxLite with Mpc823e
Date: Sat, 27 Nov 2004 19:08:32 -0500	[thread overview]
Message-ID: <200411271908.32930.ccool@ninjatech.biz> (raw)
In-Reply-To: <20041127225142.C7AA4C1430@atlas.denx.de>

Hi,

> I don't think this is the definition of "struct bd_info" ??
>
> > And I don't know what is the IMAP_ADDR, I don't know what to do.  If you
> > ca> n

I still don't have a clue what is "IMAP_ADDR" and what it does?

>
> We don't know your hardware or your memory map...
>
What can I tell you that will help you. I do have the memory map of my board 
and my hardware is simple, " EP MPC823 H1 DW " but with only 16M of RAM.  We 
ordered thoses board and we received a few boards with MPC823 and some with 
MPC823e.  I'm now developping for the MPC823.  Here is the link if you're 
interested.

http://www.embeddedplanet.com/products/lite.asp

The memory map is pretty much that.  I would be glad to be more specific if I 
need to.  I just need to understand :

0000 0000
 - 16 Mb SDRAM
00FF FFFF

FA00 0000
 - 128 Kb NVRAM
FA02 0000

FA20 0000
 - 16 Kb Internal Register and DP Ram
FA20 3FFF

FA40 0000
 - RPXlite configuration Register (32 bits), mirrored 8192 times
FA40 7FFF

FC00 0000
 - Mirror 16 Mb flash
FCFF FFFF

FD00 0000
 - Mirror 16 Mb flash
FDFF FFFF

FE00 0000
  - Mirror 16 Mb flash
FEFF FFFF

FF00 0000
 - 16 Mb flash,
 - At the adresse  FFF0 0000 (hard-coded) the RPXlite looks for a boot-loader 
at startup.  if the original bootloader is there, it looks for the diagnostic 
utilities at the adress FFF8 0000
FFFF FFFF

As for the struc bd_info, here they are.  I'm sorry if I'm a complete newbee, 
I did not know I should have sent both of the structures:

in u-boot/include/asm-ppc/u-boot.h (well, you should have it, but here it is 
anyway)
typedef struct bd_info {
        unsigned long   bi_memstart;    /* start of DRAM memory */
        unsigned long   bi_memsize;     /* size  of DRAM memory in bytes */
        unsigned long   bi_flashstart;  /* start of FLASH memory */
        unsigned long   bi_flashsize;   /* size  of FLASH memory */
        unsigned long   bi_flashoffset; /* reserved area for startup monitor 
*/
        unsigned long   bi_sramstart;   /* start of SRAM memory */
        unsigned long   bi_sramsize;    /* size  of SRAM memory */
#if defined(CONFIG_5xx) || defined(CONFIG_8xx) || defined(CONFIG_8260) \
        || defined(CONFIG_E500)
        unsigned long   bi_immr_base;   /* base of IMMR register */
#endif
#if defined(CONFIG_MPC5xxx)
        unsigned long   bi_mbar_base;   /* base of internal registers */
#endif
#if defined(CONFIG_MPC8220)
        unsigned long   bi_mbar_base;   /* base of internal registers */
        unsigned long   bi_inpfreq;     /* Input Freq, In MHz */
        unsigned long   bi_pcifreq;     /* PCI Freq, in MHz */
        unsigned long   bi_pevfreq;     /* PEV Freq, in MHz */
        unsigned long   bi_flbfreq;     /* Flexbus Freq, in MHz */
        unsigned long   bi_vcofreq;     /* VCO Freq, in MHz */
#endif
        unsigned long   bi_bootflags;   /* boot / reboot flag (for LynxOS) */
        unsigned long   bi_ip_addr;     /* IP Address */
        unsigned char   bi_enetaddr[6]; /* Ethernet adress */
        unsigned short  bi_ethspeed;    /* Ethernet speed in Mbps */
        unsigned long   bi_intfreq;     /* Internal Freq, in MHz */
        unsigned long   bi_busfreq;     /* Bus Freq, in MHz */
#if defined(CONFIG_8260) || defined(CONFIG_MPC8560)
        unsigned long   bi_cpmfreq;     /* CPM_CLK Freq, in MHz */
        unsigned long   bi_brgfreq;     /* BRG_CLK Freq, in MHz */
        unsigned long   bi_sccfreq;     /* SCC_CLK Freq, in MHz */
        unsigned long   bi_vco;         /* VCO Out from PLL, in MHz */
#endif
#if defined(CONFIG_MPC5xxx)
        unsigned long   bi_ipbfreq;     /* IPB Bus Freq, in MHz */
        unsigned long   bi_pcifreq;     /* PCI Bus Freq, in MHz */
#endif
        unsigned long   bi_baudrate;    /* Console Baudrate */
#if defined(CONFIG_405)   || \
    defined(CONFIG_405GP) || \
    defined(CONFIG_405CR) || \
    defined(CONFIG_405EP) || \
    defined(CONFIG_440)
        unsigned char   bi_s_version[4];        /* Version of this structure 
*/
        unsigned char   bi_r_version[32];       /* Version of the ROM (IBM) */
        unsigned int    bi_procfreq;    /* CPU (Internal) Freq, in Hz */
        unsigned int    bi_plb_busfreq; /* PLB Bus speed, in Hz */
        unsigned int    bi_pci_busfreq; /* PCI Bus speed, in Hz */
        unsigned char   bi_pci_enetaddr[6];     /* PCI Ethernet MAC address */
#endif
#if defined(CONFIG_HYMOD)
        hymod_conf_t    bi_hymod_conf;  /* hymod configuration information */
#endif

#if defined(CONFIG_ETH1ADDR)
        /* second onboard ethernet port */
        unsigned char   bi_enet1addr[6];
#endif
#if defined(CONFIG_ETH2ADDR)
        /* third onboard ethernet port */
        unsigned char   bi_enet2addr[6];
#endif
#if defined(CONFIG_ETH3ADDR)
        unsigned char   bi_enet3addr[6];
#endif

#if defined(CONFIG_405GP) || defined(CONFIG_405EP) || defined (CONFIG_440_GX)
        unsigned int    bi_opbfreq;             /* OPB clock in Hz */
        int             bi_iic_fast[2];         /* Use fast i2c mode */
#endif
#if defined(CONFIG_NX823)
        unsigned char   bi_sernum[8];
#endif
#if defined(CONFIG_440_GX)
        int             bi_phynum[4];           /* Determines phy mapping */
        int             bi_phymode[4];          /* Determines phy mode */
#endif
} bd_t;



in linux-2.4.22/include/asm-ppc/ppcboot.h
typedef struct bd_info {
        unsigned long   bi_memstart;    /* start of DRAM memory */
        unsigned long   bi_memsize;     /* size  of DRAM memory in bytes */
        unsigned long   bi_flashstart;  /* start of FLASH memory */
        unsigned long   bi_flashsize;   /* size  of FLASH memory */
        unsigned long   bi_flashoffset; /* reserved area for startup monitor 
*/
        unsigned long   bi_sramstart;   /* start of SRAM memory */
        unsigned long   bi_sramsize;    /* size  of SRAM memory */
#if defined(CONFIG_8xx) || defined(CONFIG_8260)
        unsigned long   bi_immr_base;   /* base of IMMR register */
#endif
        unsigned long   bi_bootflags;   /* boot / reboot flag (for LynxOS) */
        unsigned long   bi_ip_addr;     /* IP Address */
        unsigned char   bi_enetaddr[6]; /* Ethernet adress */
        unsigned short  bi_ethspeed;    /* Ethernet speed in Mbps */
        unsigned long   bi_intfreq;     /* Internal Freq, in MHz */
        unsigned long   bi_busfreq;     /* Bus Freq, in MHz */
#if defined(CONFIG_8260)
        unsigned long   bi_cpmfreq;     /* CPM_CLK Freq, in MHz */
        unsigned long   bi_brgfreq;     /* BRG_CLK Freq, in MHz */
        unsigned long   bi_sccfreq;     /* SCC_CLK Freq, in MHz */
        unsigned long   bi_vco;         /* VCO Out from PLL, in MHz */
#endif
        unsigned long   bi_baudrate;    /* Console Baudrate */
#if defined(CONFIG_405GP)
        unsigned char   bi_s_version[4];        /* Version of this structure 
*/
        unsigned char   bi_r_version[32];       /* Version of the ROM (IBM) */
        unsigned int    bi_procfreq;    /* CPU (Internal) Freq, in Hz */
        unsigned int    bi_plb_busfreq; /* PLB Bus speed, in Hz */
        unsigned int    bi_pci_busfreq; /* PCI Bus speed, in Hz */
        unsigned char   bi_pci_enetaddr[6];     /* PCI Ethernet MAC address */
#endif
#if defined(CONFIG_HYMOD)
        hymod_conf_t    bi_hymod_conf;  /* hymod configuration information */
#endif
#if defined(CONFIG_EVB64260)
        /* the board has three onboard ethernet ports */
        unsigned char   bi_enet1addr[6];
        unsigned char   bi_enet2addr[6];
#endif
        mon_fnc_t       *bi_mon_fnc;    /* Pointer to monitor functions */
} bd_t;


> > help me with only one question, please make it this one.  I've been
> > working> on this kernel for a long time.  I tried the linux-2.4.25 from
> > your site, (with the mkimage tool included and working with mkimage),
> > it's a great kernel, but the mtd is not working at all, and it is working
> > with my kernel> .
>
> MTD is working fine on all supported boards.
>
Well, it is not detected on my board with the linuxppc_2_4_devel, but I do 
have a character device on my linux-2.4.22 patched with the stuff on 
penguinppc.org  I used the same config and I tried some other and it does not 
work.

but I don't want to blame anyone by saying this.  All I'm trying to do here is 
to get this RPXlite board up and working with linux, a ramdisk, and access to 
the mtd device, pcmcia and I2c.  I know my last kernel worked fine and that 
is why I want to use it.  Whit the old/original boot-loader, I could just 
load the kernel (example "load at 0x0010 0000" and start it 64kb further, to 
skip the elf header, so "go at 0x0011 0000"), and it was booting.  So I 
though that the kernel would work with u-boot.  To do so, I have read the doc 
on http://www.denx.de/twiki/bin/view/DULG/Manual and some other tip found in 
google and the README in u-boot. 

Sadly, it did not work, it froze exactly after uncompressing the kernel.  So I 
refer myself to the FAQ and I am not experimented enough (or a good enough 
code-writer at this point) to fully understand what I had to do modify the 
bd_info structures correctly without breaking everything.  That's pretty much 
it.

Thanks for your help.  If the information I gave is not enough, I will be glad 
to give more, if I know what to give.  

Rapha?l

  reply	other threads:[~2004-11-28  0:08 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <E1BwYgD-0000Gb-4n@sc8-sf-list1.sourceforge.net>
2004-08-16 18:35 ` [U-Boot-Users] Re: Problem building U-boot for RpxLite with Mpc823e Sam Song
2004-11-26 17:22   ` Ccool
2004-11-27  1:44     ` Wolfgang Denk
2004-11-27 19:59       ` Ccool
2004-11-27 22:51         ` Wolfgang Denk
2004-11-28  0:08           ` Ccool [this message]
2004-11-28  9:30             ` Paul Ruhland
2004-11-28 10:21             ` Wolfgang Denk

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=200411271908.32930.ccool@ninjatech.biz \
    --to=ccool@ninjatech.biz \
    --cc=u-boot@lists.denx.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.