Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter <ageisreiter@xxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Thu, 18 Jun 2009 06:29:01 -0700
Hi,
The driver still doesn't work. But I have a new idea, what the problem could
be. My StrataFlash is asynchron connected to the PXA270 CPU. But there are
two Read opeartions possible for example: Asynchronous Page-Mode Read and
Synchronous Burst-Mode Read. How does the driver know, how the flash is
connected?
To Gary: So I think, that I doesn't need XIP.
By the way: Could anybody send me his registry settings for the stratad
driver. Then I could compare working settings with my own.
Thanks,
Andreas
"Gary Swalling" wrote:
Hi Andreas,.
I believe XIP means raw writes with no flash driver metadata. XIP would be
used for FMD integrated in the OAL for raw binary updates. If you want to
load an executable from a flash disk, then to the FMD this will just be
another file, managed by the filesystem, and it needs the metadata.
Regards,
Gary
"ageisreiter" <ageisreiter@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:1E07DA3E-00C4-454A-8144-5147C126AE55@xxxxxxxxxxxxxxxx
Hi Bruce,
the driver doesn't work, but I think that the geometrie should no be ok:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\StrataFMD]
"Dll"="stratad.dll"
"Order"=dword:2
"Prefix"="DSK"
"Ioctl"=dword:4
"Profile"="MSFlash"
"IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
"XIPEntireFlash"=dword:1
"MemBase"=dword:9AA00000
"MemLen"=dword:100000
"BlockSize"=dword:20000
"WriteBufferSize"=dword:C ; determined from CFI
"SectorSize"=dword:200
"IsPairedFlash"=dword:0 ; 16 bit Data-Bus width
Do you know sonthing about the following registry settings?
1. XIPEntireFlash: I will not start WinCE at the flash. But I will start
executables from the FlashDisk in Windows. Do I need XIP for this?
2. MountFlags
([HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash]):
I will not boot from the Flash, but I will use the Flash for Hive Based
Registry. Is the setting 6 for "MountFlags" ok? (This should mount the
partition at the root as a bootable partition.)
3. LoadFlags
([HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\MSFlash]):
LoadFlags 0x01 == load synchronously. What means this?
Thanks,
Andreas
"Bruce Eitman [eMVP]" wrote:
Sector size is totally software controlled. The driver breaks the
hardware
block into smaller pieces which it calls sectors.
--
Bruce Eitman (eMVP)
Senior Engineer
Bruce.Eitman AT EuroTech DOT com
My BLOG http://geekswithblogs.net/bruceeitman
EuroTech Inc.
www.EuroTech.com
"ageisreiter" <ageisreiter@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:7F209EF4-AE7D-47E0-9AB0-15AFCD8CD30A@xxxxxxxxxxxxxxxx
Ok, I will check the data sheet because of the geometry.
But one other question. What is the SectorSize? Why do I need this
registry
setting?
Thanks,
Andreas
"Bruce Eitman [eMVP]" wrote:
Actually, I beleive that the data sheet is wrong about that - or at
least
inconsistent. Check the Geometry (I think) in the data sheet. But
the
actual value will depend on how your driver uses it. I have modified
mine
to support P30, so it is considerably different. Mine calculates the
write
buffer size based on the information that it reads from flash.
--
Bruce Eitman (eMVP)
Senior Engineer
Bruce.Eitman AT EuroTech DOT com
My BLOG http://geekswithblogs.net/bruceeitman
EuroTech Inc.
www.EuroTech.com
"ageisreiter" <ageisreiter@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:3161F0FA-8644-4BCB-BECA-9EE8021559E5@xxxxxxxxxxxxxxxx
I would say that 0x20 for the WriteBufferSize is correct, because a
buffered
program command is followed by up to 32 words of data at P30 Flash
(from
the
datasheet P30 StrataFlash).
But I have tried 10 (0xA) and I get the same error mesages:
FSDMGR!AutoLoadBlockDevice: Auto-loading block driver from
"Drivers\BuiltIn\StrataFMD"FSDMGR!MountStore: Attaching new storage
device
"MSFlash"OSAXST1: >>> Loading Module 'stratad.dll' (0x83FAE708) at
address
0xC0D20000-0xC0D41000 in Process 'NK.EXE' (0x813D9AA0)
OSAXST1: >>> Loading Module 'k.ceddk.dll' (0x83FAE840) at address
0xC0630000-0xC063E000 in Process 'NK.EXE' (0x813D9AA0)
Kernel DLL 'stratad.dll' needs thread creation/deletion notification
INFO: FMD_Init: -> InitializeFlash() 8 Blocks unlocked from virtual
Flash
Address =0x9aa00000
INFO: FMD_Init: Flash Address=0x9aa00000 Length=0x100000.
Unknown: DEBUGCHK failed in file
C:\ymzki\private\winceos\DRIVERS\msflash\src\.\falmain.cpp at line
1409
DEBUG_BREAK @c0d2ddf0 Ignored.
FLASHDRV.DLL:CalculateLogicalRange() - Invalid number of logical
blocks
0
FSDMGR!MountStore: Failed mounting store "MSFlash"; error=50
FSDMGR!StoreDisk_t::~StoreDisk_t: deleting store (D0021D30)OSAXST1:
<<<
Unloading Module 'stratad.dll' (0x83FAE708) at address
0xC0D20000-0xC0D41000
in Process 'NK.EXE' (0x813D9AA0)
OSAXST1: <<< Unloading Module 'k.ceddk.dll' (0x83FAE840) at address
0xC0630000-0xC063E000 in Process 'NK.EXE' (0x813D9AA0)
FSDMGR!AutoLoadFileSystems: Unable to auto-load
HKLM\System\StorageManager\AutoLoad\MSFlash;
error=50FSDMGR!STOREMGR_StartBootPhase BootPhase=1 (PrevBootPhase=0)
FSDMGR!AutoLoadFileSystems: CurrentBootPhase=1, LoadFlags=1
FSVOL: Using system database volume "\Documents and
Settings\default.vol"
By the way, I have no paired flash. I have only 16bit databus width.
Have you another idea?
Thanks,
Andreas
"Bruce Eitman [eMVP]" wrote:
Double check WriteBufferSize - it should be n, where the actual
write
buffer
size is 2 ^ n (2 raised to the power of n) multiplied by 2 if
Paired
Flash
is set.
I think that n for P30 is 10 (0xA)
--
Bruce Eitman (eMVP)
Senior Engineer
Bruce.Eitman AT EuroTech DOT com
My BLOG http://geekswithblogs.net/bruceeitman
EuroTech Inc.
www.EuroTech.com
"ageisreiter" <ageisreiter@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in
message
news:2E398BC4-59BA-4890-A120-64B7A6DE93B1@xxxxxxxxxxxxxxxx
Hi Bruce,
I don't use the smaller blocks at the beginning of the flash. I
will
split
my flash in two parts. The first for the Image: 0x0000_0000 -
0x00FF_FFFF
and
the seccond for the FlashDisk: 0x0100_0000 - 0x01FF_FFFF
But it doesn't work. So I think the failure is in the registry
settings
or
in the OEMAddressTable.
Registry settings:
--------------------
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\StrataFMD]
"Dll"="stratad.dll"
"Order"=dword:2
"Prefix"="DSK"
"Ioctl"=dword:4
"Profile"="MSFlash"
"IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
;"XIPEntireFlash"=dword:1
"MemBase"=dword:9AA00000
"MemLen"=dword:100000
"BlockSize"=dword:20000
"WriteBufferSize"=dword:20
"SectorSize"=dword:200
"IsPairedFlash"=dword:0 ; 16 bit Data-Bus width
; Support XIP in IMGFS
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash\IMGFS]
;"XIP"=dword:1
; Override names in default profile
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash]
"Name"="MSFLASH for STRATAFLASH"
"Folder"="NOR Flash"
"DefaultFileSystem"="FATFS"
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountFlags"=dword:6
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\MSFlash]
"DriverPath"="Drivers\\BuiltIn\\StrataFMD"
; LoadFlags 0x01 == load synchronously
"LoadFlags"=dword:1
"Order"=dword:0
"BootPhase"=dword:0
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles]
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountFlags"=dword:6
"DefaultFileSystem"="FATFS"
"PartitionDriverName"="MSPART"
"Folder"="Mounted Volume"
IF IMGULDR
; Allow xip and read-only filesys regions to be written to
; in the update loader only
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\StrataFMD]
"UpdateReadOnly"=dword:1
ENDIF
Config.bib:
-------------
...
ZBANK 9A500000 00100000 RESERVED
;Reserve
ZBANK
FLASH 9AA00000 01000000 RESERVED
;Flash
Storage
EBOOT 9BA00000 00040000 RESERVED
;EBOOT
Flash
image
BOOTCFG 9BA40000 00040000 RESERVED
;BOOT
config
parm
...
OEMAddressTable:
----------------------
...
DCD 0x9A900000, 0x08000000, 1 ; MAINSTONEII: nCS2:
Ethernet
controller
DCD 0x9AA00000, 0x01000000, 16 ; MAINSTONEII: nCS0:
Storage
(16MB)
DCD 0x9BA00000, 0x00000000, 16 ; MAINSTONEII: nCS0:
BootFlash
(16MB)
DCD 0x9EA00000, 0x50000000, 1 ; BULVERDE: Camera
peripheral
interface.
...
Please have I look at my settings.
Thanks,
Andreas
"Bruce Eitman [eMVP]" wrote:
Yes, it can be modified to support P30.
Giving it more thought, you probably can get it to work with P30
simply
by
avoiding the smaller blocks. That is set the start address or
size
to
keep
the flash disk out of the smaller blocks.
--
Bruce Eitman (eMVP)
Senior Engineer
Bruce.Eitman AT EuroTech DOT com
My BLOG http://geekswithblogs.net/bruceeitman
EuroTech Inc.
www.EuroTech.com
- Follow-Ups:
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Gary Swalling
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- References:
- FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Bruce Eitman [eMVP]
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Gary Swalling
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Bruce Eitman [eMVP]
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Bruce Eitman [eMVP]
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Bruce Eitman [eMVP]
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Bruce Eitman [eMVP]
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Bruce Eitman [eMVP]
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: ageisreiter
- Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- From: Gary Swalling
- FMD driver problem - Unable to add FlashDisk to my OS Design
- Prev by Date: NDIS Miniport Driver and some issues
- Next by Date: Error: OALKitlInit: KitlInit failed
- Previous by thread: Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- Next by thread: Re: FMD driver problem - Unable to add FlashDisk to my OS Design
- Index(es):
Relevant Pages
|