SandPoint with 8245

Hi,

could anybody give me a clue how to compile image for MCP8245

Your help is appreciated.


Regards,
Alex

Alex,

The key to building an image is the buildfile, this defines all the
resources that will go into the image.

Do you have the Board Support Package for the Sandpoint system? If so check
the docs in the help viewer: BSP’s for QNX RTOS. There is a bunch of good
info there on modifying and compiling images for the MPC8245.

Also check the Building Embedded Systems documentation in the help viewer.
There is good info there about buildfiles, but it is not tailored to the
8245.

Mike Toreno

p.s. if you don’t have the embedded development kit I strongly suggest that
you pick it up if possible. In my opinion it is a very useful toolset.


“Alex Ivchenko” <aivchenko@ueidaq.com> wrote in message
news:3C76733E.9E284480@ueidaq.com

Hi,

could anybody give me a clue how to compile image for MCP8245

Your help is appreciated.


Regards,
Alex

Mike Toreno <no.spam@address.com> wrote:
: Alex,

: The key to building an image is the buildfile, this defines all the
: resources that will go into the image.

: Do you have the Board Support Package for the Sandpoint system? If so check
: the docs in the help viewer: BSP’s for QNX RTOS. There is a bunch of good
: info there on modifying and compiling images for the MPC8245.

: Also check the Building Embedded Systems documentation in the help viewer.
: There is good info there about buildfiles, but it is not tailored to the
: 8245.

: Mike Toreno

: p.s. if you don’t have the embedded development kit I strongly suggest that
: you pick it up if possible. In my opinion it is a very useful toolset.


Just to put a point on this issue (8240 vs 8245); no serious code changes
were required to support the 8245. All that was required was some
simple changes to the IPL & startup code to detect the 8245 (PVR
for the 8245 is different from the 8240). The next release of the
PPC embedded kit will seemlessly support the 8245 (i.e. sandpoint).
When this will be released is unknown to me … if you need something
immediate please touch base with your sales contact.


John

Mike,


on Mon, 25 Feb 2002 14:45:04 -0500 Mike Toreno wrote:

Do you have the Board Support Package for the Sandpoint system? If so check
the docs in the help viewer: BSP’s for QNX RTOS. There is a bunch of good
info there on modifying and compiling images for the MPC8245.
Thanks, I’ve got it. Along with Windows-hosted CDK

Then I obtained new startup routine from QNX support

  1. I put this file in C:\qnxsdk\QNXsdk\target\qnx6\ppcbe\boot\sys\

  2. I replaced old startup-sandpoint in sandpoint.build with new one

  3. I built image (in C:\qnxsdk\QNXsdk\target\qnx6\ppcbe\boot\build)

mkifs sandpoint.build sandpoint.s19

No errors. s19 seems to be all right.

  1. I built binary file:

[virtual=ppcbe,binary] .bootstrap = {…

and did: dumpifs -v sandpoint.bin
startup_vaddr=0x1f1c48

  1. I downloaded sandpoint.s19 into sandpoint system - OK
    dl -k (I tried -o 100000 option also because I didn’t find DINK default address for download)

  2. When I
    go 1f1c48

system just hangs up.

Am I doing everything correcly?
Are any other steps involved in geting SandPoint to work?

\

Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com

Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: Mike,


: on Mon, 25 Feb 2002 14:45:04 -0500 Mike Toreno wrote:

:> Do you have the Board Support Package for the Sandpoint system? If so check
:> the docs in the help viewer: BSP’s for QNX RTOS. There is a bunch of good
:> info there on modifying and compiling images for the MPC8245.
: Thanks, I’ve got it. Along with Windows-hosted CDK

: Then I obtained new startup routine from QNX support

: 1. I put this file in C:\qnxsdk\QNXsdk\target\qnx6\ppcbe\boot\sys\

: 2. I replaced old startup-sandpoint in sandpoint.build with new one

: 3. I built image (in C:\qnxsdk\QNXsdk\target\qnx6\ppcbe\boot\build)

: mkifs sandpoint.build sandpoint.s19

: No errors. s19 seems to be all right.

: 4. I built binary file:

: [virtual=ppcbe,binary] .bootstrap = {…

: and did: dumpifs -v sandpoint.bin
: startup_vaddr=0x1f1c48

: 5. I downloaded sandpoint.s19 into sandpoint system - OK
: dl -k (I tried -o 100000 option also because I didn’t find DINK default address for download)

: 6. When I
: go 1f1c48

: system just hangs up.


What version of DINK32 are you using? If it’s 12.1 or above, try the following
before downloading the Neutrino image:

at DINK32 prompt type:

rm hid0


when prompted for a new value, enter 0 (zero).


This will disable the caches. Earlier versions of DINK32 did not
enable the caches.

Don’t worry, the OS will take care of re-enabling the caches once the
system is up and running.

\

John

John,

Don’t worry, the OS will take care of re-enabling the caches once the
system is up and running.

Thanks for your help.

rm hid0 helped.
now I download code, start it and go 1f1c28.

Then QNX prints:

“Startup doesn’t support processor version 0x80811014”

What’s that?
I have Unity X4 with 8245 installed


Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com

Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: John,

:> Don’t worry, the OS will take care of re-enabling the caches once the
:> system is up and running.

: Thanks for your help.

: rm hid0 helped.
: now I download code, start it and go 1f1c28.

: Then QNX prints:

: “Startup doesn’t support processor version 0x80811014”


This is what the original startup-sandpoint would produce. Are you
sure you’ve included the new startup-sandpoint in your build file?
Who gave you the new startup-sandpoint? What version of the OS are
you using?

The new startup-sandpoint with 8245 support specifically masquerades
as an 8240. The above PVR is for the 80811014.


John


: What’s that?
: I have Unity X4 with 8245 installed

: –
: Regards,
: Alex

: –
: Alex Ivchenko, Ph.D.
: United Electronic Industries, Inc.
: “The High-Performance Alternative ™”
: –
: 611 Neponset Street
: Canton, MA 02021
: Tel:(781)821-2890 x222 Fax:(781)821-2891
: http://www.ueidaq.com


John Wall
QSSL
Custom Engineering Group (R&D)

John Wall <jwall@qnx.com> wrote:
: Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: : John,

: :> Don’t worry, the OS will take care of re-enabling the caches once the
: :> system is up and running.

: : Thanks for your help.

: : rm hid0 helped.
: : now I download code, start it and go 1f1c28.

: : Then QNX prints:

: : “Startup doesn’t support processor version 0x80811014”

^^^^^^^^^
which is the 8245



: This is what the original startup-sandpoint would produce. Are you
: sure you’ve included the new startup-sandpoint in your build file?
: Who gave you the new startup-sandpoint? What version of the OS are
: you using?

: The new startup-sandpoint with 8245 support specifically masquerades
: as an 8240. The above PVR is for the 80811014.

: –
: John


: : What’s that?
: : I have Unity X4 with 8245 installed

: : –
: : Regards,
: : Alex

: : –
: : Alex Ivchenko, Ph.D.
: : United Electronic Industries, Inc.
: : “The High-Performance Alternative ™”
: : –
: : 611 Neponset Street
: : Canton, MA 02021
: : Tel:(781)821-2890 x222 Fax:(781)821-2891
: : http://www.ueidaq.com

: –
: John Wall
: QSSL
: Custom Engineering Group (R&D)


John Wall
QSSL
Custom Engineering Group (R&D)

John,

What do you think is the best way to put QNX to Sandpoint?
I’d like to put IPL into PMC flash device, initialize IDE controller
and boot up the rest of QNX from CompactFlash attached to IDE.

Does it sound the right way to go?

Where is the best place to look for makefile example that does so?


Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com

I have seen this problem before. In my case I had to recompile the QNX BSP,
under the guidance of QNX. I think John mentioned earlier that that BSP does
not outright support the 8245, it was designed for the 8240. By changing a
few BSP files doing another make and then copying the output (libstartup.a)
of the make to the …/prebuilt directory solved this problem for me.

The Unity X4 is the 8245 plug in module for the Sandpoint motherboard:
http://e-www.motorola.com/webapp/sps/site/prod_summary.jsp?code=PPCEVALSP382
45&nodeId=01M964472741978#features
The Sandpoint X3 motherboard can handle a variety of processors.

“John Wall” <jwall@qnx.com> wrote in message
news:a5gusl$5ad$1@nntp.qnx.com

John Wall <> jwall@qnx.com> > wrote:
: Alex Ivchenko <> aivchenko@ueidaq.com> > wrote:
: : John,

: :> Don’t worry, the OS will take care of re-enabling the caches once the
: :> system is up and running.

: : Thanks for your help.

: : rm hid0 helped.
: : now I download code, start it and go 1f1c28.

: : Then QNX prints:

: : “Startup doesn’t support processor version 0x80811014”

^^^^^^^^^
which is the 8245



: This is what the original startup-sandpoint would produce. Are you
: sure you’ve included the new startup-sandpoint in your build file?
: Who gave you the new startup-sandpoint? What version of the OS are
: you using?

: The new startup-sandpoint with 8245 support specifically masquerades
: as an 8240. The above PVR is for the 80811014.

: –
: John


: : What’s that?
: : I have Unity X4 with 8245 installed

: : –
: : Regards,
: : Alex

: : –
: : Alex Ivchenko, Ph.D.
: : United Electronic Industries, Inc.
: : “The High-Performance Alternative ™”
: : –
: : 611 Neponset Street
: : Canton, MA 02021
: : Tel:(781)821-2890 x222 Fax:(781)821-2891
: : > http://www.ueidaq.com

: –
: John Wall
: QSSL
: Custom Engineering Group (R&D)


John Wall
QSSL
Custom Engineering Group (R&D)

Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: John,

: What do you think is the best way to put QNX to Sandpoint?
: I’d like to put IPL into PMC flash device, initialize IDE controller
: and boot up the rest of QNX from CompactFlash attached to IDE.

: Does it sound the right way to go?

: Where is the best place to look for makefile example that does so?


A couple of years ago we setup a similar configuration.
We created a compressed boot image that fit in the 512K of boot flash
(including the IPL). The boot image contained the appropriate
pieces to bringup the IDE driver. This was a good configuration
for a canned demo.

For development purposes I would suggest doing something similar
except replace the IDE with NFS. This makes testing software on
the target painless.

The sandpoint BSP contains build files and scripts for placing
the IPL and Neutrino image in flash.

\

John



: –
: Regards,
: Alex

: –
: Alex Ivchenko, Ph.D.
: United Electronic Industries, Inc.
: “The High-Performance Alternative ™”
: –
: 611 Neponset Street
: Canton, MA 02021
: Tel:(781)821-2890 x222 Fax:(781)821-2891
: http://www.ueidaq.com


John Wall
QSSL
Custom Engineering Group (R&D)

John,

For development purposes I would suggest doing something similar
except replace the IDE with NFS. This makes testing software on
the target painless.
Well, for me it will be easier to put everything into CompactFlash (the system

isn’t networked).
I think what I need is to start minimal QNX from the flash with IDE support
and then mount IDE drive and continue initialization.

Do you know where can I find docs about how to install QNX into flash on Sandpoint?

\

Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com

Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: John,

:> For development purposes I would suggest doing something similar
:> except replace the IDE with NFS. This makes testing software on
:> the target painless.
: Well, for me it will be easier to put everything into CompactFlash (the system
: isn’t networked).
: I think what I need is to start minimal QNX from the flash with IDE support
: and then mount IDE drive and continue initialization.

: Do you know where can I find docs about how to install QNX into flash on Sandpoint?

Documentation for this procedure is part of the BSP docs for the Sandpoint.


John


: –
: Regards,
: Alex

: –
: Alex Ivchenko, Ph.D.
: United Electronic Industries, Inc.
: “The High-Performance Alternative ™”
: –
: 611 Neponset Street
: Canton, MA 02021
: Tel:(781)821-2890 x222 Fax:(781)821-2891
: http://www.ueidaq.com


John Wall
QSSL
Custom Engineering Group (R&D)

John,

Documentation for this procedure is part of the BSP docs for the Sandpoint.
Thanks. BTW, it doesn’t describe how to program QNX straight to the flash. I used MontaVista

Linux guide to find out how to do it (BTW, we got Linux working without problems booting from
flash and continue from CompactFlash sitting on primary IDE).

I followed procedure described in docs:

  1. Compiled sandpointflash.srec in
    C:\qnxsdk\QNXsdk\target\qnx6\usr\src\bsp-6.1.0\ppc\sandpoint\images
    (for address 0xFFF00000), replaced startup-sandpoint with startup-sandpoint-8245 in
    sandpoint-flash.build

  2. Switched SW2[1] on PMC up (load from PCI) and SW2[5] up PROGMODE=PROGSEL=local flash prog

  3. dl -k -o 200000 downloaded sandpointflash.srec

  4. fu -l 100000 ff000000 80000 - programmed local flash located on PMC

  5. Switched SW2[1] down (boot from PMC flash) and SW2[5] down (RCS0 selects local flash - boot)

  6. Restarted SandPoint and changed baud rate to 115200

When Sandpoint starts from QNX it pops out “Download” to the terminal and nothing else.

Is it the right way to go?

Is the build preset for some particular Sandpoint configuration?

\

Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com

Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: John,

:> Documentation for this procedure is part of the BSP docs for the Sandpoint.
: Thanks. BTW, it doesn’t describe how to program QNX straight to the flash. I used MontaVista
: Linux guide to find out how to do it (BTW, we got Linux working without problems booting from
: flash and continue from CompactFlash sitting on primary IDE).

: I followed procedure described in docs:

: 1. Compiled sandpointflash.srec in
: C:\qnxsdk\QNXsdk\target\qnx6\usr\src\bsp-6.1.0\ppc\sandpoint\images
: (for address 0xFFF00000), replaced startup-sandpoint with startup-sandpoint-8245 in
: sandpoint-flash.build

: 2. Switched SW2[1] on PMC up (load from PCI) and SW2[5] up PROGMODE=PROGSEL=local flash prog

: 3. dl -k -o 200000 downloaded sandpointflash.srec

: 4. fu -l 100000 ff000000 80000 - programmed local flash located on PMC

: 5. Switched SW2[1] down (boot from PMC flash) and SW2[5] down (RCS0 selects local flash - boot)

: 6. Restarted SandPoint and changed baud rate to 115200

: When Sandpoint starts from QNX it pops out “Download” to the terminal and nothing else.

Actually, this is good. This means the QNX IPL has indeed executed.
The default action of the IPL is to request a serial download of
the Neutrino image.ÿ There should be a section in the BSP doc that
talks about modifying the IPL code to boot from flash. Basically you
need to remove the “ÿimage_download_8250” from main.c, and modify
the scanning routines (image_scan) to scan for the OS in flash.


As far as burning the flash is concerned, we’ve simply pop off
the 512K part and used a flash burner to put a Neutrino image on
the flash.

\

John

John,

thank you very much for your help!

It was much easier to put MontaVista Linux on Sandpoint, at list documentation was OK.
I didn’t expect that QNX docs ain’t so good.

need to remove the “ÿimage_download_8250” from main.c, and modify
the scanning routines (image_scan) to scan for the OS in flash.
Thanks, I found it and correct code.

Question: when I recompile
C:\qnxsdk\QNXsdk\target\qnx6\usr\src\bsp-6.1.0\ppc\sandpoint\src\hardware\ipl\boards\sandpoint\makefile

compiler couldn’t find ipl.h. OK, there is no such a file in Windows CDK.
I copied it from QNX

However:
there is no definition of:
init_icache();
in ipl.h and ipl.h is the only header included into main.c
is it “void init_icache(void)”?

Also makefile has library ipl.lib included (-lipl)
I couldn’t find that library anywhere.

As far as burning the flash is concerned, we’ve simply pop off
the 512K part and used a flash burner to put a Neutrino image on the flash.
I have to put QNX into PMC Flash, and it’s in SMT package.

Thus, fu -l -o …

\

Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com

Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: John,

: thank you very much for your help!

: It was much easier to put MontaVista Linux on Sandpoint, at list documentation was OK.
: I didn’t expect that QNX docs ain’t so good.


Hi Alex,

I was wondering whether you could expand on this. We’re looking for
any feedback concerning the BSP docs. Did you expect a more “step
by step” approach to putting the image in flash? Our approach has
been to make the instructions “step by step” to boot the OS via
the monitor but to let the customer decide how things are configured
otherwise. We try to generically describe the IPL in the “Building
Embedded Systems” and hope that with the code the user can move
forward. I welcome your suggestions.


:>> need to remove the “ÿimage_download_8250” from main.c, and modify
:> the scanning routines (image_scan) to scan for the OS in flash.
: Thanks, I found it and correct code.

: Question: when I recompile
: C:\qnxsdk\QNXsdk\target\qnx6\usr\src\bsp-6.1.0\ppc\sandpoint\src\hardware\ipl\boards\sandpoint\makefile

: compiler couldn’t find ipl.h. OK, there is no such a file in Windows CDK.
: I copied it from QNX

I’m not familiar with the Windows version of the tools, but I believe
you need to do a “make” from the …\bsp-6.1.0\ppc\sandpoint directory
first.ÿ This will make sure everything is correctly setup. Once
this is done you can go the individual components (as above) and
type “make install” to rebuild the component and install it to the correct
location. I believe there was a seperate release note to this
affect.

Hope this helps.


John

John,


: It was much easier to put MontaVista Linux on Sandpoint, at list documentation was OK.
: I didn’t expect that QNX docs ain’t so good.

Majority of information is already in BSP docs. However It’s hard to start working with
it from the scratch.

I would suggest to structure documents like:

  1. Getting Started manual:
    where to look for what,
    description of files in BSP tree,
    how to recompile parts of the project
    how to customize image (and links to existing manuals)
  2. Sandpoint-specific manual
    how to download program and write to the flash
    what are installation options (download, flash, hdd, …)

by step" approach to putting the image in flash? Our approach has
been to make the instructions “step by step” to boot the OS via
the monitor but to let the customer decide how things are configured
otherwise. We try to generically describe the IPL in the “Building
Embedded Systems” and hope that with the code the user can move

Step-by-step approach is not so bad and quite useful.
I think you need to add overview into documents, some kind of short tutorial
explaining different options.

Again, majority of information is there, just make it easier to use.
For example, instead of giving link to the whole System Architecture document
give a link to the particular chapter where related things are discussed.


Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com

Alex Ivchenko <aivchenko@ueidaq.com> wrote:
: John,


:> : It was much easier to put MontaVista Linux on Sandpoint, at list documentation was OK.
:> : I didn’t expect that QNX docs ain’t so good.

: Majority of information is already in BSP docs. However It’s hard to start working with
: it from the scratch.

: I would suggest to structure documents like:
: 1. Getting Started manual:
: where to look for what,
: description of files in BSP tree,
: how to recompile parts of the project
: how to customize image (and links to existing manuals)
: 2. Sandpoint-specific manual
: how to download program and write to the flash
: what are installation options (download, flash, hdd, …)

:> by step" approach to putting the image in flash? Our approach has
:> been to make the instructions “step by step” to boot the OS via
:> the monitor but to let the customer decide how things are configured
:> otherwise. We try to generically describe the IPL in the “Building
:> Embedded Systems” and hope that with the code the user can move

: Step-by-step approach is not so bad and quite useful.
: I think you need to add overview into documents, some kind of short tutorial
: explaining different options.

: Again, majority of information is there, just make it easier to use.
: For example, instead of giving link to the whole System Architecture document
: give a link to the particular chapter where related things are discussed.


Thank you Alex … I will pass this information to our docs
people.


John

John,

As far as I understood to rebuild startup-sandpoint (to support 8245 and switch completely to
57600) I need pre-built libstartup.a

Am I right?


Regards,
Alex


Alex Ivchenko, Ph.D.
United Electronic Industries, Inc.
“The High-Performance Alternative ™”

611 Neponset Street
Canton, MA 02021
Tel:(781)821-2890 x222 Fax:(781)821-2891
http://www.ueidaq.com