Changeset b3f8fb7 in mainline for kernel/generic/include/mm/page.h


Ignore:
Timestamp:
2007-01-28T13:25:49Z (18 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
8e8c1a5
Parents:
1ba41c5
Message:

huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/mm/page.h

    r1ba41c5 rb3f8fb7  
    3636#define KERN_PAGE_H_
    3737
    38 #include <arch/mm/asid.h>
    3938#include <arch/types.h>
    40 #include <typedefs.h>
     39#include <mm/as.h>
    4140#include <memstr.h>
    42 
    43 #define PAGE_CACHEABLE_SHIFT            0
    44 #define PAGE_NOT_CACHEABLE_SHIFT        PAGE_CACHEABLE_SHIFT
    45 #define PAGE_PRESENT_SHIFT              1
    46 #define PAGE_NOT_PRESENT_SHIFT          PAGE_PRESENT_SHIFT
    47 #define PAGE_USER_SHIFT                 2
    48 #define PAGE_KERNEL_SHIFT               PAGE_USER_SHIFT
    49 #define PAGE_READ_SHIFT                 3
    50 #define PAGE_WRITE_SHIFT                4
    51 #define PAGE_EXEC_SHIFT                 5
    52 #define PAGE_GLOBAL_SHIFT               6
    53 
    54 #define PAGE_NOT_CACHEABLE      (0<<PAGE_CACHEABLE_SHIFT)
    55 #define PAGE_CACHEABLE          (1<<PAGE_CACHEABLE_SHIFT)
    56 
    57 #define PAGE_PRESENT            (0<<PAGE_PRESENT_SHIFT)
    58 #define PAGE_NOT_PRESENT        (1<<PAGE_PRESENT_SHIFT)
    59 
    60 #define PAGE_USER               (1<<PAGE_USER_SHIFT)
    61 #define PAGE_KERNEL             (0<<PAGE_USER_SHIFT)
    62 
    63 #define PAGE_READ               (1<<PAGE_READ_SHIFT)
    64 #define PAGE_WRITE              (1<<PAGE_WRITE_SHIFT)
    65 #define PAGE_EXEC               (1<<PAGE_EXEC_SHIFT)
    66 
    67 #define PAGE_GLOBAL             (1<<PAGE_GLOBAL_SHIFT)
    68 
    6941
    7042/**
     
    7345#define PAGE_COLOR(va)  (((va) >> PAGE_WIDTH) & ((1 << PAGE_COLOR_BITS) - 1))
    7446
    75 /** Page fault access type. */
    76 enum pf_access {
    77         PF_ACCESS_READ,
    78         PF_ACCESS_WRITE,
    79         PF_ACCESS_EXEC
    80 };
    81 typedef enum pf_access pf_access_t;
    82 
    8347/** Operations to manipulate page mappings. */
    84 struct page_mapping_operations {
    85         void (* mapping_insert)(as_t *as, uintptr_t page, uintptr_t frame, int
    86                 flags);
     48typedef struct {
     49        void (* mapping_insert)(as_t *as, uintptr_t page, uintptr_t frame,
     50                int flags);
    8751        void (* mapping_remove)(as_t *as, uintptr_t page);
    8852        pte_t *(* mapping_find)(as_t *as, uintptr_t page);
    89 };
    90 typedef struct page_mapping_operations page_mapping_operations_t;
     53} page_mapping_operations_t;
    9154
    9255extern page_mapping_operations_t *page_mapping_operations;
     
    9558extern void page_table_lock(as_t *as, bool lock);
    9659extern void page_table_unlock(as_t *as, bool unlock);
    97 extern void page_mapping_insert(as_t *as, uintptr_t page, uintptr_t frame, int
    98         flags);
     60extern void page_mapping_insert(as_t *as, uintptr_t page, uintptr_t frame,
     61        int flags);
    9962extern void page_mapping_remove(as_t *as, uintptr_t page);
    10063extern pte_t *page_mapping_find(as_t *as, uintptr_t page);
Note: See TracChangeset for help on using the changeset viewer.