This is the mail archive of the ecos-discuss@sources.redhat.com 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]

Problem with PowerPC cache init order


I have found a problem with the PowerPC architecture hal. 

The sequence for cache initialisation after reset (in hal_enable_caches)
should be:

unlock all
invalidate all
enable cache

Instead it is:

invalidate all
unlock all
enable cache

This can cause problems if there are sections of the cache that are locked
and contain invalid data. My target crashed with an exception when it needed
to do a copyback after a first time power up (not a pretty sight!!). The
copyback address was an invalid address.

I have attached a patch to fix the problem. This works for the MPC850, but I
do not know if it is correct for the complete PowerPC family.

 <<my.patch>> 

Mark Retallack
Graduate Engineer
Siemens Traffic Controls 
Sopers Lane, Poole, Dorset. BH17 7ER. UK.
Tel: 01202 782844
Fax: 01202 782545
www.siemenstraffic.com

Committed to quality traffic solutions and service excellence





Siemens Traffic Controls is a division of Siemens plc. Registered No.
727817, England. 
Registered office: Siemens House, Oldbury, Bracknell, Berkshire, RG12 8FZ. 

This communication contains information which is confidential and 
may also be privileged. It is for the exclusive use of the addressee. 
If you are not the addressee please note that any distribution, 
reproduction, copying, publication or use of this communication 
or the information in it is prohibited.  If you have received this 
communication in error, please contact us immediately and also 
delete the communication from your computer. 


Attachment: my.patch
Description: Binary data

-- 
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]