aboutsummaryrefslogtreecommitdiffstats
path: root/arch/avr32
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-08-15 14:11:45 -0400
committerSage Weil <sage@inktank.com>2013-08-15 14:11:45 -0400
commitee3e542fec6e69bc9fb668698889a37d93950ddf (patch)
treee74ee766a4764769ef1d3d45d266b4dea64101d3 /arch/avr32
parentfe2a801b50c0bb8039d627e5ae1fec249d10ff39 (diff)
parentf1d6e17f540af37bb1891480143669ba7636c4cf (diff)
Merge remote-tracking branch 'linus/master' into testing
Diffstat (limited to 'arch/avr32')
-rw-r--r--arch/avr32/boards/atngw100/mrmt.c1
-rw-r--r--arch/avr32/include/asm/pgtable.h3
-rw-r--r--arch/avr32/include/uapi/asm/socket.h2
-rw-r--r--arch/avr32/kernel/process.c2
-rw-r--r--arch/avr32/kernel/setup.c2
-rw-r--r--arch/avr32/kernel/vmlinux.lds.S4
-rw-r--r--arch/avr32/mach-at32ap/at32ap700x.c2
-rw-r--r--arch/avr32/mm/init.c52
8 files changed, 17 insertions, 51 deletions
diff --git a/arch/avr32/boards/atngw100/mrmt.c b/arch/avr32/boards/atngw100/mrmt.c
index f91431963452..7de083d19b7e 100644
--- a/arch/avr32/boards/atngw100/mrmt.c
+++ b/arch/avr32/boards/atngw100/mrmt.c
@@ -150,7 +150,6 @@ static struct ac97c_platform_data __initdata ac97c0_data = {
150static struct platform_device rmt_ts_device = { 150static struct platform_device rmt_ts_device = {
151 .name = "ucb1400_ts", 151 .name = "ucb1400_ts",
152 .id = -1, 152 .id = -1,
153 }
154}; 153};
155#endif 154#endif
156 155
diff --git a/arch/avr32/include/asm/pgtable.h b/arch/avr32/include/asm/pgtable.h
index 6fbfea61f7bb..4beff97e2033 100644
--- a/arch/avr32/include/asm/pgtable.h
+++ b/arch/avr32/include/asm/pgtable.h
@@ -362,9 +362,6 @@ typedef pte_t *pte_addr_t;
362 362
363#define kern_addr_valid(addr) (1) 363#define kern_addr_valid(addr) (1)
364 364
365#define io_remap_pfn_range(vma, vaddr, pfn, size, prot) \
366 remap_pfn_range(vma, vaddr, pfn, size, prot)
367
368/* No page table caches to initialize (?) */ 365/* No page table caches to initialize (?) */
369#define pgtable_cache_init() do { } while(0) 366#define pgtable_cache_init() do { } while(0)
370 367
diff --git a/arch/avr32/include/uapi/asm/socket.h b/arch/avr32/include/uapi/asm/socket.h
index 37401f535126..11c4259c62fb 100644
--- a/arch/avr32/include/uapi/asm/socket.h
+++ b/arch/avr32/include/uapi/asm/socket.h
@@ -74,4 +74,6 @@
74 74
75#define SO_SELECT_ERR_QUEUE 45 75#define SO_SELECT_ERR_QUEUE 45
76 76
77#define SO_BUSY_POLL 46
78
77#endif /* __ASM_AVR32_SOCKET_H */ 79#endif /* __ASM_AVR32_SOCKET_H */
diff --git a/arch/avr32/kernel/process.c b/arch/avr32/kernel/process.c
index e7b61494c312..c2731003edef 100644
--- a/arch/avr32/kernel/process.c
+++ b/arch/avr32/kernel/process.c
@@ -341,7 +341,7 @@ unsigned long get_wchan(struct task_struct *p)
341 * is actually quite ugly. It might be possible to 341 * is actually quite ugly. It might be possible to
342 * determine the frame size automatically at build 342 * determine the frame size automatically at build
343 * time by doing this: 343 * time by doing this:
344 * - compile sched.c 344 * - compile sched/core.c
345 * - disassemble the resulting sched.o 345 * - disassemble the resulting sched.o
346 * - look for 'sub sp,??' shortly after '<schedule>:' 346 * - look for 'sub sp,??' shortly after '<schedule>:'
347 */ 347 */
diff --git a/arch/avr32/kernel/setup.c b/arch/avr32/kernel/setup.c
index b4247f478065..209ae5ad3495 100644
--- a/arch/avr32/kernel/setup.c
+++ b/arch/avr32/kernel/setup.c
@@ -555,7 +555,7 @@ void __init setup_arch (char **cmdline_p)
555{ 555{
556 struct clk *cpu_clk; 556 struct clk *cpu_clk;
557 557
558 init_mm.start_code = (unsigned long)_text; 558 init_mm.start_code = (unsigned long)_stext;
559 init_mm.end_code = (unsigned long)_etext; 559 init_mm.end_code = (unsigned long)_etext;
560 init_mm.end_data = (unsigned long)_edata; 560 init_mm.end_data = (unsigned long)_edata;
561 init_mm.brk = (unsigned long)_end; 561 init_mm.brk = (unsigned long)_end;
diff --git a/arch/avr32/kernel/vmlinux.lds.S b/arch/avr32/kernel/vmlinux.lds.S
index 9cd2bd91d64a..a4589176bed5 100644
--- a/arch/avr32/kernel/vmlinux.lds.S
+++ b/arch/avr32/kernel/vmlinux.lds.S
@@ -23,7 +23,7 @@ SECTIONS
23{ 23{
24 . = CONFIG_ENTRY_ADDRESS; 24 . = CONFIG_ENTRY_ADDRESS;
25 .init : AT(ADDR(.init) - LOAD_OFFSET) { 25 .init : AT(ADDR(.init) - LOAD_OFFSET) {
26 _stext = .; 26 _text = .;
27 __init_begin = .; 27 __init_begin = .;
28 _sinittext = .; 28 _sinittext = .;
29 *(.text.reset) 29 *(.text.reset)
@@ -46,7 +46,7 @@ SECTIONS
46 46
47 .text : AT(ADDR(.text) - LOAD_OFFSET) { 47 .text : AT(ADDR(.text) - LOAD_OFFSET) {
48 _evba = .; 48 _evba = .;
49 _text = .; 49 _stext = .;
50 *(.ex.text) 50 *(.ex.text)
51 *(.irq.text) 51 *(.irq.text)
52 KPROBES_TEXT 52 KPROBES_TEXT
diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c
index 7c2f6685bf43..7f8759a8a92a 100644
--- a/arch/avr32/mach-at32ap/at32ap700x.c
+++ b/arch/avr32/mach-at32ap/at32ap700x.c
@@ -1060,7 +1060,9 @@ struct platform_device *__init at32_add_device_usart(unsigned int id)
1060 1060
1061void __init at32_setup_serial_console(unsigned int usart_id) 1061void __init at32_setup_serial_console(unsigned int usart_id)
1062{ 1062{
1063#ifdef CONFIG_SERIAL_ATMEL
1063 atmel_default_console_device = at32_usarts[usart_id]; 1064 atmel_default_console_device = at32_usarts[usart_id];
1065#endif
1064} 1066}
1065 1067
1066/* -------------------------------------------------------------------- 1068/* --------------------------------------------------------------------
diff --git a/arch/avr32/mm/init.c b/arch/avr32/mm/init.c
index e66e8406f992..def5391d927a 100644
--- a/arch/avr32/mm/init.c
+++ b/arch/avr32/mm/init.c
@@ -100,60 +100,26 @@ void __init paging_init(void)
100 100
101void __init mem_init(void) 101void __init mem_init(void)
102{ 102{
103 int codesize, reservedpages, datasize, initsize; 103 pg_data_t *pgdat;
104 int nid, i;
105 104
106 reservedpages = 0;
107 high_memory = NULL; 105 high_memory = NULL;
106 for_each_online_pgdat(pgdat)
107 high_memory = max_t(void *, high_memory,
108 __va(pgdat_end_pfn(pgdat) << PAGE_SHIFT));
108 109
109 /* this will put all low memory onto the freelists */ 110 set_max_mapnr(MAP_NR(high_memory));
110 for_each_online_node(nid) { 111 free_all_bootmem();
111 pg_data_t *pgdat = NODE_DATA(nid); 112 mem_init_print_info(NULL);
112 unsigned long node_pages = 0;
113 void *node_high_memory;
114
115 num_physpages += pgdat->node_present_pages;
116
117 if (pgdat->node_spanned_pages != 0)
118 node_pages = free_all_bootmem_node(pgdat);
119
120 totalram_pages += node_pages;
121
122 for (i = 0; i < node_pages; i++)
123 if (PageReserved(pgdat->node_mem_map + i))
124 reservedpages++;
125
126 node_high_memory = (void *)((pgdat->node_start_pfn
127 + pgdat->node_spanned_pages)
128 << PAGE_SHIFT);
129 if (node_high_memory > high_memory)
130 high_memory = node_high_memory;
131 }
132
133 max_mapnr = MAP_NR(high_memory);
134
135 codesize = (unsigned long)_etext - (unsigned long)_text;
136 datasize = (unsigned long)_edata - (unsigned long)_data;
137 initsize = (unsigned long)__init_end - (unsigned long)__init_begin;
138
139 printk ("Memory: %luk/%luk available (%dk kernel code, "
140 "%dk reserved, %dk data, %dk init)\n",
141 nr_free_pages() << (PAGE_SHIFT - 10),
142 totalram_pages << (PAGE_SHIFT - 10),
143 codesize >> 10,
144 reservedpages << (PAGE_SHIFT - 10),
145 datasize >> 10,
146 initsize >> 10);
147} 113}
148 114
149void free_initmem(void) 115void free_initmem(void)
150{ 116{
151 free_initmem_default(0); 117 free_initmem_default(-1);
152} 118}
153 119
154#ifdef CONFIG_BLK_DEV_INITRD 120#ifdef CONFIG_BLK_DEV_INITRD
155void free_initrd_mem(unsigned long start, unsigned long end) 121void free_initrd_mem(unsigned long start, unsigned long end)
156{ 122{
157 free_reserved_area(start, end, 0, "initrd"); 123 free_reserved_area((void *)start, (void *)end, -1, "initrd");
158} 124}
159#endif 125#endif