02.03.2014 Views

BSP Developer's Guide

BSP Developer's Guide

BSP Developer's Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Contents<br />

Memory-Mapped Chips ................................................................... 92<br />

I/O-Mapped Chips ............................................................................ 93<br />

Multi-Function Chips ........................................................................ 93<br />

Multiple Buses .................................................................................... 94<br />

Interrupt Controllers ......................................................................... 94<br />

5.4 Design <strong>Guide</strong>lines ............................................................................................ 95<br />

Names and Locations ........................................................................ 95<br />

Documentation and Standards ........................................................ 96<br />

Per-Device Data Structure ................................................................ 97<br />

Per-Driver Data Structure ................................................................. 97<br />

Driver Interrupt Service Routines ................................................... 97<br />

Access Macros .................................................................................... 98<br />

5.5 Step by Step ....................................................................................................... 100<br />

5.6 Cache Considerations ...................................................................................... 101<br />

5.7 Helpful Hints .................................................................................................... 102<br />

5.8 Driver Use of the Cache Library .................................................................... 103<br />

5.8.1 Review of cacheLib Facilities ........................................................... 103<br />

5.8.2 Conducting Driver Analysis ............................................................ 103<br />

Shared Memory Types ....................................................................... 104<br />

Driver Attributes ................................................................................ 105<br />

5.8.3 Developing the cacheLib Strategy ................................................... 106<br />

Flush and Invalidate Macros ............................................................ 107<br />

WRITE_PIPING Attribute ................................................................ 107<br />

SNOOPED Attribute ......................................................................... 108<br />

MMU_TAGGING Attribute ............................................................. 108<br />

USER_DATA_UNKNOWN Attribute ............................................ 108<br />

DEVICE_WRITES_ASYNCHRONOUSLY Attribute ................... 109<br />

SHARED_CACHE_LINES Attribute .............................................. 109<br />

DEVICE_WRITES_ASYNCHRONOUSLY and<br />

SHARED_CACHE_LINES Attributes .............................. 109<br />

SHARED_POINTERS Attribute ...................................................... 110<br />

5.8.4 Additional Cache Library Hints ...................................................... 110<br />

ix

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!