diff options
Diffstat (limited to 'include/asm-avr32')
-rw-r--r-- | include/asm-avr32/a.out.h | 7 | ||||
-rw-r--r-- | include/asm-avr32/arch-at32ap/board.h | 3 | ||||
-rw-r--r-- | include/asm-avr32/page.h | 1 | ||||
-rw-r--r-- | include/asm-avr32/pgalloc.h | 16 | ||||
-rw-r--r-- | include/asm-avr32/posix_types.h | 4 | ||||
-rw-r--r-- | include/asm-avr32/processor.h | 5 |
6 files changed, 21 insertions, 15 deletions
diff --git a/include/asm-avr32/a.out.h b/include/asm-avr32/a.out.h index 9f398ab28ed0..e46375a34a72 100644 --- a/include/asm-avr32/a.out.h +++ b/include/asm-avr32/a.out.h | |||
@@ -17,11 +17,4 @@ struct exec | |||
17 | #define N_DRSIZE(a) ((a).a_drsize) | 17 | #define N_DRSIZE(a) ((a).a_drsize) |
18 | #define N_SYMSIZE(a) ((a).a_syms) | 18 | #define N_SYMSIZE(a) ((a).a_syms) |
19 | 19 | ||
20 | #ifdef __KERNEL__ | ||
21 | |||
22 | #define STACK_TOP TASK_SIZE | ||
23 | #define STACK_TOP_MAX STACK_TOP | ||
24 | |||
25 | #endif | ||
26 | |||
27 | #endif /* __ASM_AVR32_A_OUT_H */ | 20 | #endif /* __ASM_AVR32_A_OUT_H */ |
diff --git a/include/asm-avr32/arch-at32ap/board.h b/include/asm-avr32/arch-at32ap/board.h index d6993a6b6473..7597b0bd2f01 100644 --- a/include/asm-avr32/arch-at32ap/board.h +++ b/include/asm-avr32/arch-at32ap/board.h | |||
@@ -51,6 +51,9 @@ struct platform_device * | |||
51 | at32_add_device_ide(unsigned int id, unsigned int extint, | 51 | at32_add_device_ide(unsigned int id, unsigned int extint, |
52 | struct ide_platform_data *data); | 52 | struct ide_platform_data *data); |
53 | 53 | ||
54 | /* mask says which PWM channels to mux */ | ||
55 | struct platform_device *at32_add_device_pwm(u32 mask); | ||
56 | |||
54 | /* depending on what's hooked up, not all SSC pins will be used */ | 57 | /* depending on what's hooked up, not all SSC pins will be used */ |
55 | #define ATMEL_SSC_TK 0x01 | 58 | #define ATMEL_SSC_TK 0x01 |
56 | #define ATMEL_SSC_TF 0x02 | 59 | #define ATMEL_SSC_TF 0x02 |
diff --git a/include/asm-avr32/page.h b/include/asm-avr32/page.h index ee23499cec34..5582968feee8 100644 --- a/include/asm-avr32/page.h +++ b/include/asm-avr32/page.h | |||
@@ -34,6 +34,7 @@ extern void copy_page(void *to, void *from); | |||
34 | typedef struct { unsigned long pte; } pte_t; | 34 | typedef struct { unsigned long pte; } pte_t; |
35 | typedef struct { unsigned long pgd; } pgd_t; | 35 | typedef struct { unsigned long pgd; } pgd_t; |
36 | typedef struct { unsigned long pgprot; } pgprot_t; | 36 | typedef struct { unsigned long pgprot; } pgprot_t; |
37 | typedef struct page *pgtable_t; | ||
37 | 38 | ||
38 | #define pte_val(x) ((x).pte) | 39 | #define pte_val(x) ((x).pte) |
39 | #define pgd_val(x) ((x).pgd) | 40 | #define pgd_val(x) ((x).pgd) |
diff --git a/include/asm-avr32/pgalloc.h b/include/asm-avr32/pgalloc.h index b77e364b4c44..51fc1f6e4b17 100644 --- a/include/asm-avr32/pgalloc.h +++ b/include/asm-avr32/pgalloc.h | |||
@@ -17,10 +17,11 @@ | |||
17 | set_pmd(pmd, __pmd(_PAGE_TABLE + __pa(pte))) | 17 | set_pmd(pmd, __pmd(_PAGE_TABLE + __pa(pte))) |
18 | 18 | ||
19 | static __inline__ void pmd_populate(struct mm_struct *mm, pmd_t *pmd, | 19 | static __inline__ void pmd_populate(struct mm_struct *mm, pmd_t *pmd, |
20 | struct page *pte) | 20 | pgtable_t pte) |
21 | { | 21 | { |
22 | set_pmd(pmd, __pmd(_PAGE_TABLE + page_to_phys(pte))); | 22 | set_pmd(pmd, __pmd(_PAGE_TABLE + page_to_phys(pte))); |
23 | } | 23 | } |
24 | #define pmd_pgtable(pmd) pmd_page(pmd) | ||
24 | 25 | ||
25 | /* | 26 | /* |
26 | * Allocate and free page tables | 27 | * Allocate and free page tables |
@@ -51,7 +52,9 @@ static inline struct page *pte_alloc_one(struct mm_struct *mm, | |||
51 | struct page *pte; | 52 | struct page *pte; |
52 | 53 | ||
53 | pte = alloc_page(GFP_KERNEL | __GFP_REPEAT | __GFP_ZERO); | 54 | pte = alloc_page(GFP_KERNEL | __GFP_REPEAT | __GFP_ZERO); |
54 | 55 | if (!pte) | |
56 | return NULL; | ||
57 | pgtable_page_ctor(pte); | ||
55 | return pte; | 58 | return pte; |
56 | } | 59 | } |
57 | 60 | ||
@@ -60,12 +63,17 @@ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) | |||
60 | free_page((unsigned long)pte); | 63 | free_page((unsigned long)pte); |
61 | } | 64 | } |
62 | 65 | ||
63 | static inline void pte_free(struct mm_struct *mm, struct page *pte) | 66 | static inline void pte_free(struct mm_struct *mm, pgtable_t pte) |
64 | { | 67 | { |
68 | pgtable_page_dtor(pte); | ||
65 | __free_page(pte); | 69 | __free_page(pte); |
66 | } | 70 | } |
67 | 71 | ||
68 | #define __pte_free_tlb(tlb,pte) tlb_remove_page((tlb),(pte)) | 72 | #define __pte_free_tlb(tlb,pte) \ |
73 | do { \ | ||
74 | pgtable_page_dtor(pte); \ | ||
75 | tlb_remove_page((tlb), pte); \ | ||
76 | } while (0) | ||
69 | 77 | ||
70 | #define check_pgt_cache() do { } while(0) | 78 | #define check_pgt_cache() do { } while(0) |
71 | 79 | ||
diff --git a/include/asm-avr32/posix_types.h b/include/asm-avr32/posix_types.h index 9e255b999639..fe0c0c014389 100644 --- a/include/asm-avr32/posix_types.h +++ b/include/asm-avr32/posix_types.h | |||
@@ -46,11 +46,7 @@ typedef long long __kernel_loff_t; | |||
46 | #endif | 46 | #endif |
47 | 47 | ||
48 | typedef struct { | 48 | typedef struct { |
49 | #if defined(__KERNEL__) || defined(__USE_ALL) | ||
50 | int val[2]; | 49 | int val[2]; |
51 | #else /* !defined(__KERNEL__) && !defined(__USE_ALL) */ | ||
52 | int __val[2]; | ||
53 | #endif /* !defined(__KERNEL__) && !defined(__USE_ALL) */ | ||
54 | } __kernel_fsid_t; | 50 | } __kernel_fsid_t; |
55 | 51 | ||
56 | #if defined(__KERNEL__) | 52 | #if defined(__KERNEL__) |
diff --git a/include/asm-avr32/processor.h b/include/asm-avr32/processor.h index 4212551c1cd9..49a88f5a9d2f 100644 --- a/include/asm-avr32/processor.h +++ b/include/asm-avr32/processor.h | |||
@@ -13,6 +13,11 @@ | |||
13 | 13 | ||
14 | #define TASK_SIZE 0x80000000 | 14 | #define TASK_SIZE 0x80000000 |
15 | 15 | ||
16 | #ifdef __KERNEL__ | ||
17 | #define STACK_TOP TASK_SIZE | ||
18 | #define STACK_TOP_MAX STACK_TOP | ||
19 | #endif | ||
20 | |||
16 | #ifndef __ASSEMBLY__ | 21 | #ifndef __ASSEMBLY__ |
17 | 22 | ||
18 | static inline void *current_text_addr(void) | 23 | static inline void *current_text_addr(void) |