Re: WINCE on ARM PB926:newbie question
- From: poornima.ns@xxxxxxxxx
- Date: Thu, 13 Sep 2007 01:30:33 -0700
Thank you Dean very much for the clarification.
I will go ahead with the development of the bootloader. I have the
following queries with regard to building the bootloader. kindly
clarify:
1.where do i need to define the virtual-physical address mapping? i
have edited the file
C:\WINCE500\PLATFORM\MAINSTONEII\SRC\INC\oemaddretab_cfg and edited
the folloing section to match that of my board
*******************************************************************************************************************
ALIGN
g_oalAddressTable
DCD 0x80000000, 0xA0000000, 64 ; MAINSTONEII: SDRAM
(64MB).
DCD 0x84000000, 0x5C000000, 1 ; BULVERDE: Internal
SRAM (64KB bank 0).
DCD 0x84100000, 0x58000000, 1 ; BULVERDE: Internal
memory PM registers.
DCD 0x84200000, 0x4C000000, 1 ; BULVERDE: USB host
controller.
DCD 0x84300000, 0x48000000, 1 ; BULVERDE: Memory
controller.
DCD 0x84400000, 0x44000000, 1 ; BULVERDE: LCD
controller.
DCD 0x84500000, 0x40000000, 32 ; BULVERDE: Memory-
mapped registers (peripherals).
DCD 0x86500000, 0x3C000000, 64 ; BULVERDE: PCMCIA S1
common memory space.
DCD 0x8A500000, 0x38000000, 64 ; BULVERDE: PCMCIA S1
attribute memory space.
DCD 0x8E500000, 0x30000000, 32 ; BULVERDE: PCMCIA S1
I/O space.
DCD 0x90500000, 0x2C000000
*****************************************************************************************************************
2. the ARM926EJ-s processor uses an ARMV5 instruction set. so do i
need to make changes in the
file public/common/oak/misc/makefile.def and change QRarch4t to -
QRARCH5t .
3. In the bootloader code, should i reference the hardware peripherals
with the phyical address or virtual.Suppose i need to set the status
LED on board, what shoud i do?
4. With all above changes made, will the bootloader.nb0 file generated
work on my board. what should be the entries of the bib file that is
used by the romimage utility to generate the *.nb0 file. the current
entries is as follow
**********************************************************************************************************************
STACK 80000000 00010000 RESERVED
RAM 80010000 00010000 RAM
EBOOT 80020000 00040000 RAMIMAGE
RSVD 80060000 0009F000 RESERVED
ARGS 80FF0000 00001000 RESERVED
CONFIG
AUTOSIZE=OFF
COMPRESSION=OFF
PROFILE=OFF
KERNELFIXUPS=ON
ROMSTART=80020000
ROMWIDTH=32
ROMSIZE=00040000
; The bootloader is fixed up to run from RAM, but is stored in
flash. ROMOFFSET
; adjusts the .bin file record headers to that they lie in flash
(this tells the
; bootloader already on the device to store the image in flash).
ROMOFFSET=3C9E0000
MODULES
; Name Path
Memory Type
; ------ ----------------------------------------------
-----------
nk.exe $(_TARGETPLATROOT)\target\$(_TGTCPU)\$(WINCEDEBUG)
\eboot.exe EBOOT
**********************************************************************************************************************
My board has an 128 MB SDRAm starting at phy address 0x00
64 Mb NOR flash staring at physical address 0x34000000
I plan to copy the bootloader.nb0 file to NOR flash using the boot
monitor progarm and run it .
Would appreatiate your help in this regard
Thanks and regards
Poornima
On Sep 12, 6:19 pm, "Dean Ramsier" <ramsiernos...@xxxxxxxxxx> wrote:
1. Create a New platform in PB based on the MAINSTONEII board. I know
that my board and core are different from that of the Mainstone board.
since MainstoneII is the closest BSP available to me, i created the
platform based on it.
OK, that means that any *image* you build (not project or application) is
built for MainstoneII. That *image* will not run on your hardware because
it contains hardware specific components that do not match your hardware.
2. create a "hello world" project using PB. The intention of creating
this project is make certain that the image generated using ARM
compiler and linker used by Platform builder works on my board.Since
mainstoneII uses ARMV4 architecture, i was hoping that a simple "hello
world" program would run when ported on to the board. The serial port
of the board have been initialized so that the printf output is
redirected to it.
You've built an application that does not contain hardware specific
components. But it won't run on your board because that application is
almost certainly linked against libraries that expect the underlying
WindowsCE operating system to be present. You aren't running a WindowsCE
operating system. If you linked against *any* library (including the C
run-time) provided by the OS this would fail.
3. Since the board wont understand the *.exe and *.bin fomats, i ran
the romimage utility at command prompt to genereate a raw binary image
(*.nb0)
You didn't give us the command line you used for romimage. But it wouldn't
work anyway.
4. i downloaded my code onto my 128Mb flash using the bootmonitor
program provide by manufacturer.
No problem here, but it won't run...
5. iam not able to debug at this moment because , iam not able to
connect to my board via JTAG using PB.
And the builtin support for debug transports won't work because you don't
have a CE BSP for your board.
i had thought that since i had not configured my BIB file properly,
the image generated would be linked to a differnt address
and hence the program hung.At this moment i need to get a simple
program without any OS calls(using just the libc library) to run on
board using the CL ARM compiler and linker.I would like to know
whether i cna use the CL compiler provided by MICROSOFT to generate
code for my ARM PB926EJ-s board??
The program is hung for all kinds of reasons. The answer is *yes* you can
generate code for your board using the MS ARM compiler. However, what you
need to write is a bootloader, and that means porting the MainstoneII code
to your hardware. You're wasting your time trying to prove that the MS
tools will create code that runs on your board. They will, trust us. The
hard part is getting code that matches your board, and that's your problem
to solve by porting the BSP to your hardware. The MS tools are designed for
building OS images and bootloaders, and applications that run under
WindowsCE. They are not designed to build generic code snippets that can be
loaded by a ROM monitor. I'm sure it can be done, but it isn't a
straightforward task and isn't something most of us do. Build a bootloader,
configure it to run at whatever location your rom monitor will put it, and
run that.
--
Dean Ramsier - eMVP
BSQUARE Corporation
<poornima...@xxxxxxxxx> wrote in message
news:1189569673.509533.151500@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
On Sep 11, 5:59 pm, "Bruce Eitman [eMVP]"
<beitman.nos...@xxxxxxxxxxxxxxxxxxxxxx> wrote:
You didn't tell us what you did. You created an hello world program,
what
exactly does that mean to you? What it means to me is that you wrote a
program that assumes that it has an OS to run and probably calls on
functions that are not availalble to it. Further it means that your
program
probably doesn't initialize the hardware or provide a stack so that you
can
call functions.
What you need to do is write a bootloader, which you can take one step at
a
time. You are going to need a way to debug it becuase telling us that
your
bootloader "hung" is not going to get you very far.
--
Bruce Eitman (eMVP)
Senior Engineer
beitman AT applieddata DOT net
Applied Data Systems
www.applieddata.net
An ISO 9001:2000 Registered Company
Microsoft WEP Gold-level Member
<poornima...@xxxxxxxxx> wrote in message
news:1189512470.615420.198890@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi,
I am new to winCe and need to port the os onto ARM PB926EJ-s board.
Currently i do not have BSP's for the board and intend to delevelop it
myself.
I am using the MAINSTONEII BSP as the refernce BSP.
My initial task is to port the bootloader on to the board. As a first
step towards doing this, i wanted to check whether a image generated
by the MS ARM toolchains are supported by the board. I created a small
"hello world" project and built it.Got an exe and bin file. I then
used the romimage utility to generate a raw binary image(*.nb0)and
downloaded the code using the boot monitor program provided by the
board manufacturer. when i ran the program on board, the program just
hung. what am i supposed to do? Am i going wrong any where?
The board has a 64MB SDRAM starting at address 0x00
and a NOR flash at address 0x34000000
what should be the entries in the bib file testproj.bib. How should i
go about the porting activity?
Would appretiate any help in this regard
Poornima- Hide quoted text -
- Show quoted text -
This is the procedure i have followed so far.
1. Create a New platform in PB based on the MAINSTONEII board. I know
that my board and core are different from that of the Mainstone board.
since MainstoneII is the closest BSP available to me, i created the
platform based on it.
2. create a "hello world" project using PB. The intention of creating
this project is make certain that the image generated using ARM
compiler and linker used by Platform builder works on my board.Since
mainstoneII uses ARMV4 architecture, i was hoping that a simple "hello
world" program would run when ported on to the board. The serial port
of the board have been initialized so that the printf output is
redirected to it.
3. Since the board wont understand the *.exe and *.bin fomats, i ran
the romimage utility at command prompt to genereate a raw binary image
(*.nb0)
4. i downloaded my code onto my 128Mb flash using the bootmonitor
program provide by manufacturer.
5. iam not able to debug at this moment because , iam not able to
connect to my board via JTAG using PB.
i had thought that since i had not configured my BIB file properly,
the image generated would be linked to a differnt address
and hence the program hung.At this moment i need to get a simple
program without any OS calls(using just the libc library) to run on
board using the CL ARM compiler and linker.I would like to know
whether i cna use the CL compiler provided by MICROSOFT to generate
code for my ARM PB926EJ-s board??
Thanks and regards
kiran TG- Hide quoted text -
- Show quoted text -
.
- Follow-Ups:
- Re: WINCE on ARM PB926:newbie question
- From: Dean Ramsier
- Re: WINCE on ARM PB926:newbie question
- References:
- WINCE on ARM PB926:newbie question
- From: poornima . ns
- Re: WINCE on ARM PB926:newbie question
- From: Bruce Eitman [eMVP]
- Re: WINCE on ARM PB926:newbie question
- From: poornima . ns
- Re: WINCE on ARM PB926:newbie question
- From: Dean Ramsier
- WINCE on ARM PB926:newbie question
- Prev by Date: Re: fat capacity problem with ce5...
- Next by Date: Re: SD card driver
- Previous by thread: Re: WINCE on ARM PB926:newbie question
- Next by thread: Re: WINCE on ARM PB926:newbie question
- Index(es):
Relevant Pages
|
Loading