Hi all,
I'm trying to include Intel PSM in our system, but with no success. There
are many things that I don't know, or don't understand.
We work with windows CE 6.0, PXA270, MAINSTONEIII bsp, P30 single 64MB
flash. We have IPSM version 4.0. We work with MCPII_MODULE. The reason we are
using PSM is because we want to be able to save some small text files in
flash memory. No more than that.

I worked according to the instructions in the Porting Guide of the PSM. I
calculated the flash starting address according to the table in
oemaddrtab_cfg.inc. In the table it is 0x9AA00000, but this is cached. In
ifm_sys.c I need to put an uncached address, therefore it is 0xBAA00000. (As
far as I understand the gap between them - 0x20000000- is set by
DUAL_MAP_OFFSET). But in what situations do I have to change this value?

I didn't specify a full map of the flash, only what I need. I only have one
SA (Sub-Array), which I located in the address 59MB after flash start, and
gave it a size of 4MB(1MB is left for safety). This way I don't touch the
boot and the image code. For our needs 4 MB is much more than enough. I don't
know whether it's ok to do it like that.

In the file psmfsd.reg In the section which is "no root no hive" I erased
all extras, and now there is only "PSM1", with volume name "IPSM1". In the
other sections of that same .reg file I only changed the volume name to
"IPSM1". I don't really understand what I have to write in the batch file-
mainstoneiii.bat. Do I need to set ROOT, HIVE_REGISTRY or both? (as of now
they're both set).

What I want is that when the system comes up, I'll be able to see the
directory "IPSM1". I don't really care whether it's inside "My Device", or
anywhere else, I just want to be able to know where it is, be able to insert
files inside it, write some text to these files, and the files be saved in
flash.

And what about checking some check-boxes in the catalog? Which ones need to
be checked? As of now what I have checked is from Storage Devices\MSFlash
Drivers\Intel StrataFlash NOR Driver , from File Systems and Data Store\File
System-Internal\RAM and ROM File System, from File Systems and Data
Store\Registry Storage\Hive-based Registry. Are these correct? Should I check
some others?

What happens now in my system is that there is no IPSM in it. I wait until
after the system comes up, and then try to look for the IPSM directory, and
of course, I can't find it. Probably because it isn't thereâ?¦.
Please help me in solving this problem.
Thank you all very much for your time

Re: need help trying to integrate IPSM by Paul

Paul
Wed Jun 06 13:12:18 CDT 2007

Try this: Change the PSM managed area to exclude the small block area of the
flash from PSM. You don't say whether you're using P30B or P30T chips
(bottom or top). Whichever it is, exclude the area of the flash that is
small blocks. If you're booting from that flash, too (the bootloader is at
flash physical address 0), P30B is the easiest to use, since the small
blocks will be in the bootloader area and you're probably not trying to give
them to PSM, anyway. Whatever you're using, exclude the small block portion
of the flash from PSM.

If you've already done that and it still doesn't work, exclude the last byte
or two of the area you are currently managing from the managed area (yes, it
makes no sense; just try it; I had weird problems and by reducing the
managed area length by 1, from 0x600000 + 0x02000000 to 0x600000 +
0x01ffffff, everything started working).

Paul T.

"gol" <gol@discussions.microsoft.com> wrote in message
news:D6E42159-1248-4EE4-A293-0C17618AFF80@microsoft.com...
> Hi all,
> I'm trying to include Intel PSM in our system, but with no success. There
> are many things that I don't know, or don't understand.
> We work with windows CE 6.0, PXA270, MAINSTONEIII bsp, P30 single 64MB
> flash. We have IPSM version 4.0. We work with MCPII_MODULE. The reason we
> are
> using PSM is because we want to be able to save some small text files in
> flash memory. No more than that.
>
> I worked according to the instructions in the Porting Guide of the PSM. I
> calculated the flash starting address according to the table in
> oemaddrtab_cfg.inc. In the table it is 0x9AA00000, but this is cached. In
> ifm_sys.c I need to put an uncached address, therefore it is 0xBAA00000.
> (As
> far as I understand the gap between them - 0x20000000- is set by
> DUAL_MAP_OFFSET). But in what situations do I have to change this value?
>
> I didn't specify a full map of the flash, only what I need. I only have
> one
> SA (Sub-Array), which I located in the address 59MB after flash start, and
> gave it a size of 4MB(1MB is left for safety). This way I don't touch the
> boot and the image code. For our needs 4 MB is much more than enough. I
> don't
> know whether it's ok to do it like that.
>
> In the file psmfsd.reg In the section which is "no root no hive" I erased
> all extras, and now there is only "PSM1", with volume name "IPSM1". In the
> other sections of that same .reg file I only changed the volume name to
> "IPSM1". I don't really understand what I have to write in the batch file-
> mainstoneiii.bat. Do I need to set ROOT, HIVE_REGISTRY or both? (as of now
> they're both set).
>
> What I want is that when the system comes up, I'll be able to see the
> directory "IPSM1". I don't really care whether it's inside "My Device", or
> anywhere else, I just want to be able to know where it is, be able to
> insert
> files inside it, write some text to these files, and the files be saved in
> flash.
>
> And what about checking some check-boxes in the catalog? Which ones need
> to
> be checked? As of now what I have checked is from Storage Devices\MSFlash
> Drivers\Intel StrataFlash NOR Driver , from File Systems and Data
> Store\File
> System-Internal\RAM and ROM File System, from File Systems and Data
> Store\Registry Storage\Hive-based Registry. Are these correct? Should I
> check
> some others?
>
> What happens now in my system is that there is no IPSM in it. I wait until
> after the system comes up, and then try to look for the IPSM directory,
> and
> of course, I can't find it. Probably because it isn't there..
> Please help me in solving this problem.
> Thank you all very much for your time
>



Re: need help trying to integrate IPSM by gol

gol
Sat Jun 09 08:14:01 CDT 2007

Hi Paul,
Thanks for your answer.
Actually we're using P33B. It means that I excluded the area of the small
blocks anyway. As I mentioned, I left the first 59MB out of PSM, leaving the
boot and the image code untouched.

Do you mean just to reduce the size? I only have one Sub-Array, that is SA0.
I have SA0_ADDRESS and SA0_LENGTH. So, just to reduce SA0_LENGTH by one? I've
read in the forum about that problem, but I've left 1MB at the end of the
flash(I start from 59MB and give it a size of 4MB). I thought that will
prevent it. I will try it anyway thoughâ?¦

But I think that my problem is somewhere else. I think it may be related to
catalog settings, batch file settings, and maybe something else.
What I'm doing now in the catalog is checking ROM-only File System instead
of RAM and ROM File System, and what happens is that the system doesnâ??t come
up. It waits for the file system to mount.
Please help me solve this problem
Thanks a lot


"Paul G. Tobey [eMVP]" wrote:

> Try this: Change the PSM managed area to exclude the small block area of the
> flash from PSM. You don't say whether you're using P30B or P30T chips
> (bottom or top). Whichever it is, exclude the area of the flash that is
> small blocks. If you're booting from that flash, too (the bootloader is at
> flash physical address 0), P30B is the easiest to use, since the small
> blocks will be in the bootloader area and you're probably not trying to give
> them to PSM, anyway. Whatever you're using, exclude the small block portion
> of the flash from PSM.
>
> If you've already done that and it still doesn't work, exclude the last byte
> or two of the area you are currently managing from the managed area (yes, it
> makes no sense; just try it; I had weird problems and by reducing the
> managed area length by 1, from 0x600000 + 0x02000000 to 0x600000 +
> 0x01ffffff, everything started working).
>
> Paul T.
>
> "gol" <gol@discussions.microsoft.com> wrote in message
> news:D6E42159-1248-4EE4-A293-0C17618AFF80@microsoft.com...
> > Hi all,
> > I'm trying to include Intel PSM in our system, but with no success. There
> > are many things that I don't know, or don't understand.
> > We work with windows CE 6.0, PXA270, MAINSTONEIII bsp, P30 single 64MB
> > flash. We have IPSM version 4.0. We work with MCPII_MODULE. The reason we
> > are
> > using PSM is because we want to be able to save some small text files in
> > flash memory. No more than that.
> >
> > I worked according to the instructions in the Porting Guide of the PSM. I
> > calculated the flash starting address according to the table in
> > oemaddrtab_cfg.inc. In the table it is 0x9AA00000, but this is cached. In
> > ifm_sys.c I need to put an uncached address, therefore it is 0xBAA00000.
> > (As
> > far as I understand the gap between them - 0x20000000- is set by
> > DUAL_MAP_OFFSET). But in what situations do I have to change this value?
> >
> > I didn't specify a full map of the flash, only what I need. I only have
> > one
> > SA (Sub-Array), which I located in the address 59MB after flash start, and
> > gave it a size of 4MB(1MB is left for safety). This way I don't touch the
> > boot and the image code. For our needs 4 MB is much more than enough. I
> > don't
> > know whether it's ok to do it like that.
> >
> > In the file psmfsd.reg In the section which is "no root no hive" I erased
> > all extras, and now there is only "PSM1", with volume name "IPSM1". In the
> > other sections of that same .reg file I only changed the volume name to
> > "IPSM1". I don't really understand what I have to write in the batch file-
> > mainstoneiii.bat. Do I need to set ROOT, HIVE_REGISTRY or both? (as of now
> > they're both set).
> >
> > What I want is that when the system comes up, I'll be able to see the
> > directory "IPSM1". I don't really care whether it's inside "My Device", or
> > anywhere else, I just want to be able to know where it is, be able to
> > insert
> > files inside it, write some text to these files, and the files be saved in
> > flash.
> >
> > And what about checking some check-boxes in the catalog? Which ones need
> > to
> > be checked? As of now what I have checked is from Storage Devices\MSFlash
> > Drivers\Intel StrataFlash NOR Driver , from File Systems and Data
> > Store\File
> > System-Internal\RAM and ROM File System, from File Systems and Data
> > Store\Registry Storage\Hive-based Registry. Are these correct? Should I
> > check
> > some others?
> >
> > What happens now in my system is that there is no IPSM in it. I wait until
> > after the system comes up, and then try to look for the IPSM directory,
> > and
> > of course, I can't find it. Probably because it isn't there..
> > Please help me in solving this problem.
> > Thank you all very much for your time
> >
>
>
>

Re: need help trying to integrate IPSM by gol

gol
Sun Jun 10 14:09:01 CDT 2007

Hi,
I still don't succeed. I tried many things since my last post. Basically all
had the same result. The system is stuck with the message: "FILESYS: Waiting
for bootable file system to be mounted".

I tried changing the registry files ( I also changed common.reg, I don't
know whether it's ok to do it, it might be better to change platform.reg
instead).
I checked and unchecked some catalog items. Now I have ROM-only File System,
Hive-based Registry and Intel StrataFlash NOR Driver. In mainstone.bat I set
both root and hive-registry.

I don't know whether I need to follow the instructions for "File Replication
for Persistent Storage" from here:
http://msdn2.microsoft.com/en-us/library/aa911937.aspx

After some failures I noticed in the debug messages two lines that say:
!!!ERROR! Trying to load DLL 'PSMFSD.dll' fixed-up to user address into
Kernel.
!!!ERROR! MUST SPECIFY 'K' FLAG BIB FILE.
So I opened the file psmfsd.bib and added 'K' after NK SH.

The good news are that now the following line shows up:
PSMFSD: Entering DllMain.
But after that there is a debug message :
FSDMGR!AutoLoadFileSystems: Unable to auto-load
HKLM\System\StorageManager\AutoLoad\PSM1; error=1064

I checked error number 1064 and it means ERROR_EXCEPTION_IN_SERVICE, in
other words â?? nothing helpful.
After this it ends in the same way that it did before, with the message:
FILESYS: Waiting for bootable file system to be mounted.
Please help me understand what is going on here.
Thanks a lot.


"gol" wrote:

> Hi Paul,
> Thanks for your answer.
> Actually we're using P33B. It means that I excluded the area of the small
> blocks anyway. As I mentioned, I left the first 59MB out of PSM, leaving the
> boot and the image code untouched.
>
> Do you mean just to reduce the size? I only have one Sub-Array, that is SA0.
> I have SA0_ADDRESS and SA0_LENGTH. So, just to reduce SA0_LENGTH by one? I've
> read in the forum about that problem, but I've left 1MB at the end of the
> flash(I start from 59MB and give it a size of 4MB). I thought that will
> prevent it. I will try it anyway thoughâ?¦
>
> But I think that my problem is somewhere else. I think it may be related to
> catalog settings, batch file settings, and maybe something else.
> What I'm doing now in the catalog is checking ROM-only File System instead
> of RAM and ROM File System, and what happens is that the system doesnâ??t come
> up. It waits for the file system to mount.
> Please help me solve this problem
> Thanks a lot
>
>
> "Paul G. Tobey [eMVP]" wrote:
>
> > Try this: Change the PSM managed area to exclude the small block area of the
> > flash from PSM. You don't say whether you're using P30B or P30T chips
> > (bottom or top). Whichever it is, exclude the area of the flash that is
> > small blocks. If you're booting from that flash, too (the bootloader is at
> > flash physical address 0), P30B is the easiest to use, since the small
> > blocks will be in the bootloader area and you're probably not trying to give
> > them to PSM, anyway. Whatever you're using, exclude the small block portion
> > of the flash from PSM.
> >
> > If you've already done that and it still doesn't work, exclude the last byte
> > or two of the area you are currently managing from the managed area (yes, it
> > makes no sense; just try it; I had weird problems and by reducing the
> > managed area length by 1, from 0x600000 + 0x02000000 to 0x600000 +
> > 0x01ffffff, everything started working).
> >
> > Paul T.
> >
> > "gol" <gol@discussions.microsoft.com> wrote in message
> > news:D6E42159-1248-4EE4-A293-0C17618AFF80@microsoft.com...
> > > Hi all,
> > > I'm trying to include Intel PSM in our system, but with no success. There
> > > are many things that I don't know, or don't understand.
> > > We work with windows CE 6.0, PXA270, MAINSTONEIII bsp, P30 single 64MB
> > > flash. We have IPSM version 4.0. We work with MCPII_MODULE. The reason we
> > > are
> > > using PSM is because we want to be able to save some small text files in
> > > flash memory. No more than that.
> > >
> > > I worked according to the instructions in the Porting Guide of the PSM. I
> > > calculated the flash starting address according to the table in
> > > oemaddrtab_cfg.inc. In the table it is 0x9AA00000, but this is cached. In
> > > ifm_sys.c I need to put an uncached address, therefore it is 0xBAA00000.
> > > (As
> > > far as I understand the gap between them - 0x20000000- is set by
> > > DUAL_MAP_OFFSET). But in what situations do I have to change this value?
> > >
> > > I didn't specify a full map of the flash, only what I need. I only have
> > > one
> > > SA (Sub-Array), which I located in the address 59MB after flash start, and
> > > gave it a size of 4MB(1MB is left for safety). This way I don't touch the
> > > boot and the image code. For our needs 4 MB is much more than enough. I
> > > don't
> > > know whether it's ok to do it like that.
> > >
> > > In the file psmfsd.reg In the section which is "no root no hive" I erased
> > > all extras, and now there is only "PSM1", with volume name "IPSM1". In the
> > > other sections of that same .reg file I only changed the volume name to
> > > "IPSM1". I don't really understand what I have to write in the batch file-
> > > mainstoneiii.bat. Do I need to set ROOT, HIVE_REGISTRY or both? (as of now
> > > they're both set).
> > >
> > > What I want is that when the system comes up, I'll be able to see the
> > > directory "IPSM1". I don't really care whether it's inside "My Device", or
> > > anywhere else, I just want to be able to know where it is, be able to
> > > insert
> > > files inside it, write some text to these files, and the files be saved in
> > > flash.
> > >
> > > And what about checking some check-boxes in the catalog? Which ones need
> > > to
> > > be checked? As of now what I have checked is from Storage Devices\MSFlash
> > > Drivers\Intel StrataFlash NOR Driver , from File Systems and Data
> > > Store\File
> > > System-Internal\RAM and ROM File System, from File Systems and Data
> > > Store\Registry Storage\Hive-based Registry. Are these correct? Should I
> > > check
> > > some others?
> > >
> > > What happens now in my system is that there is no IPSM in it. I wait until
> > > after the system comes up, and then try to look for the IPSM directory,
> > > and
> > > of course, I can't find it. Probably because it isn't there..
> > > Please help me in solving this problem.
> > > Thank you all very much for your time
> > >
> >
> >
> >

Re: need help trying to integrate IPSM by Paul

Paul
Mon Jun 11 13:19:52 CDT 2007

I had this problem where, on certain-sized P30 flash devices, PSM seemed to
choke if the managed area length was set in such a way that the last bytes
of the flash chip were part of the managed area. That's what I was saying.
Decrement the managed area length entry in your PSM settings and see if that
makes any difference. You might reduce the value by 1K, if 1 byte doesn't
work, just to be sure... Other than that, I don't have any other ideas
besides just going through the OEM adaptation docs from Intel very carefully
from the beginning and trying to say, for each instruction, "What if they
didn't mean what I think they meant? What might this instruction be
saying?" Their docs are poor and they frequently gloss over important
things.

Paul T.

"gol" <gol@discussions.microsoft.com> wrote in message
news:3FB4BD8B-B215-481D-B8E7-8D42DC8C8E84@microsoft.com...
> Hi,
> I still don't succeed. I tried many things since my last post. Basically
> all
> had the same result. The system is stuck with the message: "FILESYS:
> Waiting
> for bootable file system to be mounted".
>
> I tried changing the registry files ( I also changed common.reg, I don't
> know whether it's ok to do it, it might be better to change platform.reg
> instead).
> I checked and unchecked some catalog items. Now I have ROM-only File
> System,
> Hive-based Registry and Intel StrataFlash NOR Driver. In mainstone.bat I
> set
> both root and hive-registry.
>
> I don't know whether I need to follow the instructions for "File
> Replication
> for Persistent Storage" from here:
> http://msdn2.microsoft.com/en-us/library/aa911937.aspx
>
> After some failures I noticed in the debug messages two lines that say:
> !!!ERROR! Trying to load DLL 'PSMFSD.dll' fixed-up to user address into
> Kernel.
> !!!ERROR! MUST SPECIFY 'K' FLAG BIB FILE.
> So I opened the file psmfsd.bib and added 'K' after NK SH.
>
> The good news are that now the following line shows up:
> PSMFSD: Entering DllMain.
> But after that there is a debug message :
> FSDMGR!AutoLoadFileSystems: Unable to auto-load
> HKLM\System\StorageManager\AutoLoad\PSM1; error=1064
>
> I checked error number 1064 and it means ERROR_EXCEPTION_IN_SERVICE, in
> other words - nothing helpful.
> After this it ends in the same way that it did before, with the message:
> FILESYS: Waiting for bootable file system to be mounted.
> Please help me understand what is going on here.
> Thanks a lot.
>
>
> "gol" wrote:
>
>> Hi Paul,
>> Thanks for your answer.
>> Actually we're using P33B. It means that I excluded the area of the small
>> blocks anyway. As I mentioned, I left the first 59MB out of PSM, leaving
>> the
>> boot and the image code untouched.
>>
>> Do you mean just to reduce the size? I only have one Sub-Array, that is
>> SA0.
>> I have SA0_ADDRESS and SA0_LENGTH. So, just to reduce SA0_LENGTH by one?
>> I've
>> read in the forum about that problem, but I've left 1MB at the end of the
>> flash(I start from 59MB and give it a size of 4MB). I thought that will
>> prevent it. I will try it anyway though.
>>
>> But I think that my problem is somewhere else. I think it may be related
>> to
>> catalog settings, batch file settings, and maybe something else.
>> What I'm doing now in the catalog is checking ROM-only File System
>> instead
>> of RAM and ROM File System, and what happens is that the system doesn't
>> come
>> up. It waits for the file system to mount.
>> Please help me solve this problem
>> Thanks a lot
>>
>>
>> "Paul G. Tobey [eMVP]" wrote:
>>
>> > Try this: Change the PSM managed area to exclude the small block area
>> > of the
>> > flash from PSM. You don't say whether you're using P30B or P30T chips
>> > (bottom or top). Whichever it is, exclude the area of the flash that
>> > is
>> > small blocks. If you're booting from that flash, too (the bootloader
>> > is at
>> > flash physical address 0), P30B is the easiest to use, since the small
>> > blocks will be in the bootloader area and you're probably not trying to
>> > give
>> > them to PSM, anyway. Whatever you're using, exclude the small block
>> > portion
>> > of the flash from PSM.
>> >
>> > If you've already done that and it still doesn't work, exclude the last
>> > byte
>> > or two of the area you are currently managing from the managed area
>> > (yes, it
>> > makes no sense; just try it; I had weird problems and by reducing the
>> > managed area length by 1, from 0x600000 + 0x02000000 to 0x600000 +
>> > 0x01ffffff, everything started working).
>> >
>> > Paul T.
>> >
>> > "gol" <gol@discussions.microsoft.com> wrote in message
>> > news:D6E42159-1248-4EE4-A293-0C17618AFF80@microsoft.com...
>> > > Hi all,
>> > > I'm trying to include Intel PSM in our system, but with no success.
>> > > There
>> > > are many things that I don't know, or don't understand.
>> > > We work with windows CE 6.0, PXA270, MAINSTONEIII bsp, P30 single
>> > > 64MB
>> > > flash. We have IPSM version 4.0. We work with MCPII_MODULE. The
>> > > reason we
>> > > are
>> > > using PSM is because we want to be able to save some small text files
>> > > in
>> > > flash memory. No more than that.
>> > >
>> > > I worked according to the instructions in the Porting Guide of the
>> > > PSM. I
>> > > calculated the flash starting address according to the table in
>> > > oemaddrtab_cfg.inc. In the table it is 0x9AA00000, but this is
>> > > cached. In
>> > > ifm_sys.c I need to put an uncached address, therefore it is
>> > > 0xBAA00000.
>> > > (As
>> > > far as I understand the gap between them - 0x20000000- is set by
>> > > DUAL_MAP_OFFSET). But in what situations do I have to change this
>> > > value?
>> > >
>> > > I didn't specify a full map of the flash, only what I need. I only
>> > > have
>> > > one
>> > > SA (Sub-Array), which I located in the address 59MB after flash
>> > > start, and
>> > > gave it a size of 4MB(1MB is left for safety). This way I don't
>> > > touch the
>> > > boot and the image code. For our needs 4 MB is much more than enough.
>> > > I
>> > > don't
>> > > know whether it's ok to do it like that.
>> > >
>> > > In the file psmfsd.reg In the section which is "no root no hive" I
>> > > erased
>> > > all extras, and now there is only "PSM1", with volume name "IPSM1".
>> > > In the
>> > > other sections of that same .reg file I only changed the volume name
>> > > to
>> > > "IPSM1". I don't really understand what I have to write in the batch
>> > > file-
>> > > mainstoneiii.bat. Do I need to set ROOT, HIVE_REGISTRY or both? (as
>> > > of now
>> > > they're both set).
>> > >
>> > > What I want is that when the system comes up, I'll be able to see the
>> > > directory "IPSM1". I don't really care whether it's inside "My
>> > > Device", or
>> > > anywhere else, I just want to be able to know where it is, be able to
>> > > insert
>> > > files inside it, write some text to these files, and the files be
>> > > saved in
>> > > flash.
>> > >
>> > > And what about checking some check-boxes in the catalog? Which ones
>> > > need
>> > > to
>> > > be checked? As of now what I have checked is from Storage
>> > > Devices\MSFlash
>> > > Drivers\Intel StrataFlash NOR Driver , from File Systems and Data
>> > > Store\File
>> > > System-Internal\RAM and ROM File System, from File Systems and Data
>> > > Store\Registry Storage\Hive-based Registry. Are these correct? Should
>> > > I
>> > > check
>> > > some others?
>> > >
>> > > What happens now in my system is that there is no IPSM in it. I wait
>> > > until
>> > > after the system comes up, and then try to look for the IPSM
>> > > directory,
>> > > and
>> > > of course, I can't find it. Probably because it isn't there..
>> > > Please help me in solving this problem.
>> > > Thank you all very much for your time
>> > >
>> >
>> >
>> >