diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2010-08-17 01:37:39 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2010-08-17 01:37:39 +0000 |
commit | 19e95ff894d1861cd7406a45dfd36721601d6385 (patch) | |
tree | 34e9a54c4a83d76a79b4ae6556b57551f3bf0a52 /nuttx/include | |
parent | b082d08f6137b60e02a646781c2a3d2b34ffab1f (diff) | |
download | px4-nuttx-19e95ff894d1861cd7406a45dfd36721601d6385.tar.gz px4-nuttx-19e95ff894d1861cd7406a45dfd36721601d6385.tar.bz2 px4-nuttx-19e95ff894d1861cd7406a45dfd36721601d6385.zip |
Add on-demand paging support to ARM9 prefetch abort handler
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2860 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/include')
-rwxr-xr-x | nuttx/include/nuttx/page.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/nuttx/include/nuttx/page.h b/nuttx/include/nuttx/page.h index fc8ec989d..1e5ed4449 100755 --- a/nuttx/include/nuttx/page.h +++ b/nuttx/include/nuttx/page.h @@ -44,6 +44,7 @@ #include <nuttx/config.h> #include <stdbool.h> +#include <nuttx/sched.h> #ifdef CONFIG_PAGING @@ -51,6 +52,42 @@ * Pre-Processor Definitions ****************************************************************************/ +/* Configuration ************************************************************/ +/* CONFIG_PAGING_PAGESIZE - The size of one managed page. This must be a + * value supported by the processor's memory management unit. + * CONFIG_PAGING_NLOCKED - This is the number of locked pages in the memory + * map. The locked address region will then be from: + */ + +#define CONFIG_PAGING_LOCKEDBASE CONFIG_DRAM_VSTART +#define CONFIG_PAGING_LOCKEDSIZE (CONFIG_PAGING_PAGESIZE*CONFIG_PAGING_NLOCKED) +#define CONFIG_PAGING_LOCKEDEND (CONFIG_PAGING_LOCKEDBASE + CONFIG_PAGING_LOCKEDSIZE) + +/* CONFIG_PAGING_NPAGES - The number of pages in the paged region of the + * memory map. This paged region then begins and ends at: + */ + +#define CONFIG_PAGING_PAGEDBASE CONFIG_PAGING_LOCKEDEND +#define CONFIG_PAGING_PAGEDSIZE (CONFIG_PAGING_PAGESIZE*CONFIG_PAGING_NPAGES) +#define CONFIG_PAGING_PAGEDEND (CONFIG_PAGING_PAGEDBASE + CONFIG_PAGING_PAGEDSIZE) + +/* CONFIG_PAGING_DEFPRIO - The default, minimum priority of the page fill + * worker thread. The priority of the page fill work thread will be boosted + * boosted dynmically so that it matches the priority of the task on behalf + * of which it peforms the fill. This defines the minimum priority that + * will be used. Default: 50. + * CONFIG_PAGING_STACKSIZE - Defines the size of the allocated stack + * for the page fill worker thread. Default: 1024. + * CONFIG_PAGING_BLOCKINGFILL - The architecture specific up_fillpage() + * function may be blocking or non-blocking. If defined, this setting + * indicates that the up_fillpage() implementation will block until the + * transfer is completed. Default: Undefined (non-blocking). + * CONFIG_PAGING_TIMEOUT_TICKS - If defined, the implementation will monitor + * the (asynchronous) page fill logic. If the fill takes longer than this + * number if microseconds, then a fatal error will be declared. + * Default: No timeouts monitored. + */ + /**************************************************************************** * Public Data ****************************************************************************/ |