Re: problem with VxWorks resident

On Jul 19, 10:43 am, LuckeVador80 <member1...@xxxxxxxxxxxxxxxxxxxxxx>
On Jul 18, 9:12 am, LuckeVador80
Others informations
If in the function vmBaseGlobalMapInit() I select False like
parameter. The the software doesn't stop any more in the
vmBaseGlobalMapInit but after the software turn in round in
function sysNetHwInit2(). The function sysNetHwInit2() is used
sysHwInit2. The function sysHwInit2 is used in
function sysClkConnect() is used sysClkInit. Finally the
sysClkInit is used in usrRoot().

Best regards

Maybe you have got the source code of the function
best regards

I do have the source code but it wouldn't do you any good even if
were willing to send it to you -- which I'm not.

/* begin soapbox */
Copyrighted intellectual property cannot be traded like baseball
Include information about what version of vxWorks you're using
you post questions.
You'll will get quicker and better answers and you won't waste the
reader's time.
/* end soapbox */

If you absolutely must get rom-resident working, you need to
to at least vxWorks 5.5.x.
Wind River might be able to supply you a patch for 5.4 that would
support for extended vector branching.
I doubt it, but you should contact them to find out.


Ok I understand for the source code. Finally you think that I don't
resolve if I have not INCLUDE_EXC_EXTENDED_VECTORS. But I don't know
if the exceptions -- in low RAM -- can branch farther
than 32M to the kernel in my software. Maybe I don't understand your
explication, sorry.
I try the rom resident with a very simple project and not with my
big project.


It has nothing to do with the size of your project.
PPC exceptions execute in very low RAM addresses -- 0x100 to somewhere
above 0x1200 or 0x1300.
There are only 256 bytes of code space per exception, so there can't
be a bunch of code in the initial handler.
The code that does run in the vector space must save minimum context
and then branch to a secondary handler, which is linked into your
vxWorks 5.4 does this using a pc relative branch instruction that can
only branch +-32 meg.
32 meg is 0x02000000 -- isn't your ROM, and hence your kernel, at a
higher address than that?


32 meg is 0x02000000 -- isn't your ROM, and hence your kernel, at a
higher address than that?
yes the adress of rom is 0x02800000 look in my config.h.
thank you for the informations.
Finally I must have the VxWorks 5.5 if I want to use rom resident.
A last question. The software stop in vmBaseGlobalMapInit() there are
not still exceptions NO ?
If yes, what is the problem?