This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

HAL macro to deselect an external chip?


I recently had to add support for Numonyx bootblock flash parts
to our old copy of the Intel bootblock flash driver. (Which
seems to have vanished from CVS?)

Of course the part isn't _quite_ compatible.  When polling the
Numonyx part for status, you have to make sure that the chip is
deselected between polls. Intel parts don't require this.

As a result, when running with i-cache enabled, the loop that
polls the flash chip's status waiting for a program or erase
cycle to complete works with Intel parts but not with Numonyx
parts.

For my particular platform, I know how to force an uncached
read of a different external part that's on the same external
bus as the Numonix flash chip.  Adding that operation to the
loops that poll the flash chip status makes the code work with
Numonyx parts.  However, the code I'm using is
platform-specific, and adding it to the flash driver seems
wrong.

Disabling the i-cache to force external instruction fetches
between polls seems a bit drastic (and isn't possible on all
platforms anyway).

Is there a HAL macro somewhere that can be used to force
deselect of the part at a specified external memory address?

-- 
Grant Edwards                   grante             Yow! I'm GLAD I
                                  at               remembered to XEROX all
                               visi.com            my UNDERSHIRTS!!


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]