aboutsummaryrefslogtreecommitdiffstats
path: root/arch/v850
diff options
context:
space:
mode:
Diffstat (limited to 'arch/v850')
-rw-r--r--arch/v850/Makefile14
-rw-r--r--arch/v850/configs/rte-ma1-cb_defconfig108
-rw-r--r--arch/v850/configs/rte-me2-cb_defconfig21
-rw-r--r--arch/v850/configs/sim_defconfig21
-rw-r--r--arch/v850/kernel/asm-offsets.c (renamed from arch/v850/kernel/asm-consts.c)0
-rw-r--r--arch/v850/kernel/entry.S2
-rw-r--r--arch/v850/kernel/irq.c14
-rw-r--r--arch/v850/kernel/setup.c58
-rw-r--r--arch/v850/kernel/signal.c11
-rw-r--r--arch/v850/kernel/sim.c14
-rw-r--r--arch/v850/kernel/time.c7
11 files changed, 162 insertions, 108 deletions
diff --git a/arch/v850/Makefile b/arch/v850/Makefile
index bf38ca0ad781..8be9aacb20a7 100644
--- a/arch/v850/Makefile
+++ b/arch/v850/Makefile
@@ -51,16 +51,4 @@ root_fs_image_force: $(ROOT_FS_IMAGE)
51 $(OBJCOPY) $(OBJCOPY_FLAGS_BLOB) --rename-section .data=.root,alloc,load,readonly,data,contents $< root_fs_image.o 51 $(OBJCOPY) $(OBJCOPY_FLAGS_BLOB) --rename-section .data=.root,alloc,load,readonly,data,contents $< root_fs_image.o
52endif 52endif
53 53
54 54CLEAN_FILES += root_fs_image.o
55prepare: include/asm-$(ARCH)/asm-consts.h
56
57# Generate constants from C code for use by asm files
58arch/$(ARCH)/kernel/asm-consts.s: include/asm include/linux/version.h \
59 include/config/MARKER
60
61include/asm-$(ARCH)/asm-consts.h: arch/$(ARCH)/kernel/asm-consts.s
62 $(call filechk,gen-asm-offsets)
63
64CLEAN_FILES += include/asm-$(ARCH)/asm-consts.h \
65 arch/$(ARCH)/kernel/asm-consts.s \
66 root_fs_image.o
diff --git a/arch/v850/configs/rte-ma1-cb_defconfig b/arch/v850/configs/rte-ma1-cb_defconfig
index 1b5ca3c3a658..1a5beda36e29 100644
--- a/arch/v850/configs/rte-ma1-cb_defconfig
+++ b/arch/v850/configs/rte-ma1-cb_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.12-uc0 3# Linux kernel version: 2.6.13-uc0
4# Thu Jul 21 11:08:27 2005 4# Fri Sep 2 13:54:27 2005
5# 5#
6# CONFIG_MMU is not set 6# CONFIG_MMU is not set
7# CONFIG_UID16 is not set 7# CONFIG_UID16 is not set
@@ -44,6 +44,8 @@ CONFIG_ZERO_BSS=y
44# CONFIG_V850E_HIGHRES_TIMER is not set 44# CONFIG_V850E_HIGHRES_TIMER is not set
45# CONFIG_RESET_GUARD is not set 45# CONFIG_RESET_GUARD is not set
46CONFIG_LARGE_ALLOCS=y 46CONFIG_LARGE_ALLOCS=y
47CONFIG_FLATMEM=y
48CONFIG_FLAT_NODE_MEM_MAP=y
47 49
48# 50#
49# Code maturity level options 51# Code maturity level options
@@ -111,6 +113,52 @@ CONFIG_BINFMT_FLAT=y
111# CONFIG_BINFMT_MISC is not set 113# CONFIG_BINFMT_MISC is not set
112 114
113# 115#
116# Networking
117#
118CONFIG_NET=y
119
120#
121# Networking options
122#
123# CONFIG_PACKET is not set
124# CONFIG_UNIX is not set
125# CONFIG_NET_KEY is not set
126CONFIG_INET=y
127# CONFIG_IP_MULTICAST is not set
128# CONFIG_IP_ADVANCED_ROUTER is not set
129CONFIG_IP_FIB_HASH=y
130# CONFIG_IP_PNP is not set
131# CONFIG_NET_IPIP is not set
132# CONFIG_NET_IPGRE is not set
133# CONFIG_SYN_COOKIES is not set
134# CONFIG_INET_AH is not set
135# CONFIG_INET_ESP is not set
136# CONFIG_INET_IPCOMP is not set
137# CONFIG_INET_TUNNEL is not set
138# CONFIG_IP_TCPDIAG is not set
139# CONFIG_IP_TCPDIAG_IPV6 is not set
140# CONFIG_TCP_CONG_ADVANCED is not set
141CONFIG_TCP_CONG_BIC=y
142# CONFIG_IPV6 is not set
143# CONFIG_NETFILTER is not set
144# CONFIG_BRIDGE is not set
145# CONFIG_VLAN_8021Q is not set
146# CONFIG_DECNET is not set
147# CONFIG_LLC2 is not set
148# CONFIG_IPX is not set
149# CONFIG_ATALK is not set
150# CONFIG_NET_SCHED is not set
151# CONFIG_NET_CLS_ROUTE is not set
152
153#
154# Network testing
155#
156# CONFIG_NET_PKTGEN is not set
157# CONFIG_HAMRADIO is not set
158# CONFIG_IRDA is not set
159# CONFIG_BT is not set
160
161#
114# Generic Driver Options 162# Generic Driver Options
115# 163#
116CONFIG_STANDALONE=y 164CONFIG_STANDALONE=y
@@ -158,6 +206,7 @@ CONFIG_MTD_CFI_I2=y
158# Mapping drivers for chip access 206# Mapping drivers for chip access
159# 207#
160# CONFIG_MTD_COMPLEX_MAPPINGS is not set 208# CONFIG_MTD_COMPLEX_MAPPINGS is not set
209# CONFIG_MTD_PLATRAM is not set
161 210
162# 211#
163# Self-contained MTD device drivers 212# Self-contained MTD device drivers
@@ -232,6 +281,7 @@ CONFIG_IOSCHED_NOOP=y
232# 281#
233# Fusion MPT device support 282# Fusion MPT device support
234# 283#
284# CONFIG_FUSION is not set
235 285
236# 286#
237# IEEE 1394 (FireWire) support 287# IEEE 1394 (FireWire) support
@@ -244,53 +294,8 @@ CONFIG_IOSCHED_NOOP=y
244# CONFIG_I2O is not set 294# CONFIG_I2O is not set
245 295
246# 296#
247# Networking support 297# Network device support
248#
249CONFIG_NET=y
250
251#
252# Networking options
253#
254# CONFIG_PACKET is not set
255# CONFIG_UNIX is not set
256# CONFIG_NET_KEY is not set
257CONFIG_INET=y
258# CONFIG_IP_MULTICAST is not set
259# CONFIG_IP_ADVANCED_ROUTER is not set
260# CONFIG_IP_PNP is not set
261# CONFIG_NET_IPIP is not set
262# CONFIG_NET_IPGRE is not set
263# CONFIG_SYN_COOKIES is not set
264# CONFIG_INET_AH is not set
265# CONFIG_INET_ESP is not set
266# CONFIG_INET_IPCOMP is not set
267# CONFIG_INET_TUNNEL is not set
268# CONFIG_IP_TCPDIAG is not set
269# CONFIG_IP_TCPDIAG_IPV6 is not set
270# CONFIG_IPV6 is not set
271# CONFIG_NETFILTER is not set
272# CONFIG_BRIDGE is not set
273# CONFIG_VLAN_8021Q is not set
274# CONFIG_DECNET is not set
275# CONFIG_LLC2 is not set
276# CONFIG_IPX is not set
277# CONFIG_ATALK is not set
278
279#
280# QoS and/or fair queueing
281#
282# CONFIG_NET_SCHED is not set
283# CONFIG_NET_CLS_ROUTE is not set
284
285#
286# Network testing
287# 298#
288# CONFIG_NET_PKTGEN is not set
289# CONFIG_NETPOLL is not set
290# CONFIG_NET_POLL_CONTROLLER is not set
291# CONFIG_HAMRADIO is not set
292# CONFIG_IRDA is not set
293# CONFIG_BT is not set
294CONFIG_NETDEVICES=y 299CONFIG_NETDEVICES=y
295# CONFIG_DUMMY is not set 300# CONFIG_DUMMY is not set
296# CONFIG_BONDING is not set 301# CONFIG_BONDING is not set
@@ -372,6 +377,8 @@ CONFIG_EEPRO100=y
372# CONFIG_FDDI is not set 377# CONFIG_FDDI is not set
373# CONFIG_PPP is not set 378# CONFIG_PPP is not set
374# CONFIG_SLIP is not set 379# CONFIG_SLIP is not set
380# CONFIG_NETPOLL is not set
381# CONFIG_NET_POLL_CONTROLLER is not set
375 382
376# 383#
377# ISDN subsystem 384# ISDN subsystem
@@ -472,6 +479,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
472# CONFIG_JBD is not set 479# CONFIG_JBD is not set
473# CONFIG_REISERFS_FS is not set 480# CONFIG_REISERFS_FS is not set
474# CONFIG_JFS_FS is not set 481# CONFIG_JFS_FS is not set
482# CONFIG_FS_POSIX_ACL is not set
475 483
476# 484#
477# XFS support 485# XFS support
@@ -479,6 +487,8 @@ CONFIG_SERIAL_CORE_CONSOLE=y
479# CONFIG_XFS_FS is not set 487# CONFIG_XFS_FS is not set
480# CONFIG_MINIX_FS is not set 488# CONFIG_MINIX_FS is not set
481CONFIG_ROMFS_FS=y 489CONFIG_ROMFS_FS=y
490# CONFIG_MAGIC_ROM_PTR is not set
491CONFIG_INOTIFY=y
482# CONFIG_QUOTA is not set 492# CONFIG_QUOTA is not set
483CONFIG_DNOTIFY=y 493CONFIG_DNOTIFY=y
484# CONFIG_AUTOFS_FS is not set 494# CONFIG_AUTOFS_FS is not set
@@ -524,9 +534,11 @@ CONFIG_RAMFS=y
524# 534#
525CONFIG_NFS_FS=y 535CONFIG_NFS_FS=y
526CONFIG_NFS_V3=y 536CONFIG_NFS_V3=y
537# CONFIG_NFS_V3_ACL is not set
527# CONFIG_NFSD is not set 538# CONFIG_NFSD is not set
528CONFIG_LOCKD=y 539CONFIG_LOCKD=y
529CONFIG_LOCKD_V4=y 540CONFIG_LOCKD_V4=y
541CONFIG_NFS_COMMON=y
530CONFIG_SUNRPC=y 542CONFIG_SUNRPC=y
531# CONFIG_SMB_FS is not set 543# CONFIG_SMB_FS is not set
532# CONFIG_CIFS is not set 544# CONFIG_CIFS is not set
diff --git a/arch/v850/configs/rte-me2-cb_defconfig b/arch/v850/configs/rte-me2-cb_defconfig
index 44becc065404..15e666478061 100644
--- a/arch/v850/configs/rte-me2-cb_defconfig
+++ b/arch/v850/configs/rte-me2-cb_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.12-uc0 3# Linux kernel version: 2.6.13-uc0
4# Thu Jul 21 11:30:08 2005 4# Fri Sep 2 13:47:50 2005
5# 5#
6# CONFIG_MMU is not set 6# CONFIG_MMU is not set
7# CONFIG_UID16 is not set 7# CONFIG_UID16 is not set
@@ -41,6 +41,8 @@ CONFIG_ZERO_BSS=y
41# CONFIG_V850E_HIGHRES_TIMER is not set 41# CONFIG_V850E_HIGHRES_TIMER is not set
42# CONFIG_RESET_GUARD is not set 42# CONFIG_RESET_GUARD is not set
43CONFIG_LARGE_ALLOCS=y 43CONFIG_LARGE_ALLOCS=y
44CONFIG_FLATMEM=y
45CONFIG_FLAT_NODE_MEM_MAP=y
44 46
45# 47#
46# Code maturity level options 48# Code maturity level options
@@ -56,7 +58,6 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
56CONFIG_LOCALVERSION="" 58CONFIG_LOCALVERSION=""
57# CONFIG_BSD_PROCESS_ACCT is not set 59# CONFIG_BSD_PROCESS_ACCT is not set
58# CONFIG_SYSCTL is not set 60# CONFIG_SYSCTL is not set
59# CONFIG_AUDIT is not set
60# CONFIG_HOTPLUG is not set 61# CONFIG_HOTPLUG is not set
61# CONFIG_IKCONFIG is not set 62# CONFIG_IKCONFIG is not set
62CONFIG_EMBEDDED=y 63CONFIG_EMBEDDED=y
@@ -104,6 +105,11 @@ CONFIG_BINFMT_FLAT=y
104# CONFIG_BINFMT_MISC is not set 105# CONFIG_BINFMT_MISC is not set
105 106
106# 107#
108# Networking
109#
110# CONFIG_NET is not set
111
112#
107# Generic Driver Options 113# Generic Driver Options
108# 114#
109CONFIG_STANDALONE=y 115CONFIG_STANDALONE=y
@@ -151,6 +157,7 @@ CONFIG_MTD_CFI_I2=y
151# Mapping drivers for chip access 157# Mapping drivers for chip access
152# 158#
153# CONFIG_MTD_COMPLEX_MAPPINGS is not set 159# CONFIG_MTD_COMPLEX_MAPPINGS is not set
160# CONFIG_MTD_PLATRAM is not set
154 161
155# 162#
156# Self-contained MTD device drivers 163# Self-contained MTD device drivers
@@ -218,6 +225,7 @@ CONFIG_IOSCHED_NOOP=y
218# 225#
219# Fusion MPT device support 226# Fusion MPT device support
220# 227#
228# CONFIG_FUSION is not set
221 229
222# 230#
223# IEEE 1394 (FireWire) support 231# IEEE 1394 (FireWire) support
@@ -228,9 +236,8 @@ CONFIG_IOSCHED_NOOP=y
228# 236#
229 237
230# 238#
231# Networking support 239# Network device support
232# 240#
233# CONFIG_NET is not set
234# CONFIG_NETPOLL is not set 241# CONFIG_NETPOLL is not set
235# CONFIG_NET_POLL_CONTROLLER is not set 242# CONFIG_NET_POLL_CONTROLLER is not set
236 243
@@ -311,7 +318,6 @@ CONFIG_SERIAL_CORE_CONSOLE=y
311# 318#
312# Ftape, the floppy tape device driver 319# Ftape, the floppy tape device driver
313# 320#
314# CONFIG_DRM is not set
315# CONFIG_RAW_DRIVER is not set 321# CONFIG_RAW_DRIVER is not set
316 322
317# 323#
@@ -335,6 +341,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y
335# CONFIG_JBD is not set 341# CONFIG_JBD is not set
336# CONFIG_REISERFS_FS is not set 342# CONFIG_REISERFS_FS is not set
337# CONFIG_JFS_FS is not set 343# CONFIG_JFS_FS is not set
344# CONFIG_FS_POSIX_ACL is not set
338 345
339# 346#
340# XFS support 347# XFS support
@@ -342,6 +349,8 @@ CONFIG_SERIAL_CORE_CONSOLE=y
342# CONFIG_XFS_FS is not set 349# CONFIG_XFS_FS is not set
343# CONFIG_MINIX_FS is not set 350# CONFIG_MINIX_FS is not set
344CONFIG_ROMFS_FS=y 351CONFIG_ROMFS_FS=y
352# CONFIG_MAGIC_ROM_PTR is not set
353CONFIG_INOTIFY=y
345# CONFIG_QUOTA is not set 354# CONFIG_QUOTA is not set
346CONFIG_DNOTIFY=y 355CONFIG_DNOTIFY=y
347# CONFIG_AUTOFS_FS is not set 356# CONFIG_AUTOFS_FS is not set
diff --git a/arch/v850/configs/sim_defconfig b/arch/v850/configs/sim_defconfig
index d73f5f9d8383..f31ba7398ad0 100644
--- a/arch/v850/configs/sim_defconfig
+++ b/arch/v850/configs/sim_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.12-uc0 3# Linux kernel version: 2.6.13-uc0
4# Thu Jul 21 11:29:27 2005 4# Fri Sep 2 13:36:43 2005
5# 5#
6# CONFIG_MMU is not set 6# CONFIG_MMU is not set
7# CONFIG_UID16 is not set 7# CONFIG_UID16 is not set
@@ -36,6 +36,8 @@ CONFIG_NO_CACHE=y
36CONFIG_ZERO_BSS=y 36CONFIG_ZERO_BSS=y
37# CONFIG_RESET_GUARD is not set 37# CONFIG_RESET_GUARD is not set
38CONFIG_LARGE_ALLOCS=y 38CONFIG_LARGE_ALLOCS=y
39CONFIG_FLATMEM=y
40CONFIG_FLAT_NODE_MEM_MAP=y
39 41
40# 42#
41# Code maturity level options 43# Code maturity level options
@@ -51,7 +53,6 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
51CONFIG_LOCALVERSION="" 53CONFIG_LOCALVERSION=""
52# CONFIG_BSD_PROCESS_ACCT is not set 54# CONFIG_BSD_PROCESS_ACCT is not set
53# CONFIG_SYSCTL is not set 55# CONFIG_SYSCTL is not set
54# CONFIG_AUDIT is not set
55# CONFIG_HOTPLUG is not set 56# CONFIG_HOTPLUG is not set
56# CONFIG_IKCONFIG is not set 57# CONFIG_IKCONFIG is not set
57CONFIG_EMBEDDED=y 58CONFIG_EMBEDDED=y
@@ -99,6 +100,11 @@ CONFIG_BINFMT_FLAT=y
99# CONFIG_BINFMT_MISC is not set 100# CONFIG_BINFMT_MISC is not set
100 101
101# 102#
103# Networking
104#
105# CONFIG_NET is not set
106
107#
102# Generic Driver Options 108# Generic Driver Options
103# 109#
104CONFIG_STANDALONE=y 110CONFIG_STANDALONE=y
@@ -146,6 +152,7 @@ CONFIG_MTD_CFI_I2=y
146# Mapping drivers for chip access 152# Mapping drivers for chip access
147# 153#
148# CONFIG_MTD_COMPLEX_MAPPINGS is not set 154# CONFIG_MTD_COMPLEX_MAPPINGS is not set
155# CONFIG_MTD_PLATRAM is not set
149 156
150# 157#
151# Self-contained MTD device drivers 158# Self-contained MTD device drivers
@@ -213,6 +220,7 @@ CONFIG_IOSCHED_NOOP=y
213# 220#
214# Fusion MPT device support 221# Fusion MPT device support
215# 222#
223# CONFIG_FUSION is not set
216 224
217# 225#
218# IEEE 1394 (FireWire) support 226# IEEE 1394 (FireWire) support
@@ -223,9 +231,8 @@ CONFIG_IOSCHED_NOOP=y
223# 231#
224 232
225# 233#
226# Networking support 234# Network device support
227# 235#
228# CONFIG_NET is not set
229# CONFIG_NETPOLL is not set 236# CONFIG_NETPOLL is not set
230# CONFIG_NET_POLL_CONTROLLER is not set 237# CONFIG_NET_POLL_CONTROLLER is not set
231 238
@@ -300,7 +307,6 @@ CONFIG_SERIO=y
300# 307#
301# Ftape, the floppy tape device driver 308# Ftape, the floppy tape device driver
302# 309#
303# CONFIG_DRM is not set
304# CONFIG_RAW_DRIVER is not set 310# CONFIG_RAW_DRIVER is not set
305 311
306# 312#
@@ -324,6 +330,7 @@ CONFIG_SERIO=y
324# CONFIG_JBD is not set 330# CONFIG_JBD is not set
325# CONFIG_REISERFS_FS is not set 331# CONFIG_REISERFS_FS is not set
326# CONFIG_JFS_FS is not set 332# CONFIG_JFS_FS is not set
333# CONFIG_FS_POSIX_ACL is not set
327 334
328# 335#
329# XFS support 336# XFS support
@@ -331,6 +338,8 @@ CONFIG_SERIO=y
331# CONFIG_XFS_FS is not set 338# CONFIG_XFS_FS is not set
332# CONFIG_MINIX_FS is not set 339# CONFIG_MINIX_FS is not set
333CONFIG_ROMFS_FS=y 340CONFIG_ROMFS_FS=y
341# CONFIG_MAGIC_ROM_PTR is not set
342CONFIG_INOTIFY=y
334# CONFIG_QUOTA is not set 343# CONFIG_QUOTA is not set
335CONFIG_DNOTIFY=y 344CONFIG_DNOTIFY=y
336# CONFIG_AUTOFS_FS is not set 345# CONFIG_AUTOFS_FS is not set
diff --git a/arch/v850/kernel/asm-consts.c b/arch/v850/kernel/asm-offsets.c
index 24f291369070..24f291369070 100644
--- a/arch/v850/kernel/asm-consts.c
+++ b/arch/v850/kernel/asm-offsets.c
diff --git a/arch/v850/kernel/entry.S b/arch/v850/kernel/entry.S
index 895e27b1d839..d991e4547dbb 100644
--- a/arch/v850/kernel/entry.S
+++ b/arch/v850/kernel/entry.S
@@ -22,7 +22,7 @@
22#include <asm/irq.h> 22#include <asm/irq.h>
23#include <asm/errno.h> 23#include <asm/errno.h>
24 24
25#include <asm/asm-consts.h> 25#include <asm/asm-offsets.h>
26 26
27 27
28/* Make a slightly more convenient alias for C_SYMBOL_NAME. */ 28/* Make a slightly more convenient alias for C_SYMBOL_NAME. */
diff --git a/arch/v850/kernel/irq.c b/arch/v850/kernel/irq.c
index 336cbf21dc8f..9e85969ba976 100644
--- a/arch/v850/kernel/irq.c
+++ b/arch/v850/kernel/irq.c
@@ -67,13 +67,13 @@ static void ack_none(unsigned int irq)
67#define end_none enable_none 67#define end_none enable_none
68 68
69struct hw_interrupt_type no_irq_type = { 69struct hw_interrupt_type no_irq_type = {
70 "none", 70 .typename = "none",
71 startup_none, 71 .startup = startup_none,
72 shutdown_none, 72 .shutdown = shutdown_none,
73 enable_none, 73 .enable = enable_none,
74 disable_none, 74 .disable = disable_none,
75 ack_none, 75 .ack = ack_none,
76 end_none 76 .end = end_none
77}; 77};
78 78
79volatile unsigned long irq_err_count, spurious_count; 79volatile unsigned long irq_err_count, spurious_count;
diff --git a/arch/v850/kernel/setup.c b/arch/v850/kernel/setup.c
index c41d72b01b88..62bdb8d29fc0 100644
--- a/arch/v850/kernel/setup.c
+++ b/arch/v850/kernel/setup.c
@@ -1,8 +1,8 @@
1/* 1/*
2 * arch/v850/kernel/setup.c -- Arch-dependent initialization functions 2 * arch/v850/kernel/setup.c -- Arch-dependent initialization functions
3 * 3 *
4 * Copyright (C) 2001,02,03 NEC Electronics Corporation 4 * Copyright (C) 2001,02,03,05 NEC Electronics Corporation
5 * Copyright (C) 2001,02,03 Miles Bader <miles@gnu.org> 5 * Copyright (C) 2001,02,03,05 Miles Bader <miles@gnu.org>
6 * 6 *
7 * This file is subject to the terms and conditions of the GNU General 7 * This file is subject to the terms and conditions of the GNU General
8 * Public License. See the file COPYING in the main directory of this 8 * Public License. See the file COPYING in the main directory of this
@@ -98,10 +98,20 @@ void __init trap_init (void)
98} 98}
99 99
100#ifdef CONFIG_MTD 100#ifdef CONFIG_MTD
101
102/* From drivers/mtd/devices/slram.c */
103#define SLRAM_BLK_SZ 0x4000
104
101/* Set the root filesystem to be the given memory region. 105/* Set the root filesystem to be the given memory region.
102 Some parameter may be appended to CMD_LINE. */ 106 Some parameter may be appended to CMD_LINE. */
103void set_mem_root (void *addr, size_t len, char *cmd_line) 107void set_mem_root (void *addr, size_t len, char *cmd_line)
104{ 108{
109 /* Some sort of idiocy in MTD means we must supply a length that's
110 a multiple of SLRAM_BLK_SZ. We just round up the real length,
111 as the file system shouldn't attempt to access anything beyond
112 the end of the image anyway. */
113 len = (((len - 1) + SLRAM_BLK_SZ) / SLRAM_BLK_SZ) * SLRAM_BLK_SZ;
114
105 /* The only way to pass info to the MTD slram driver is via 115 /* The only way to pass info to the MTD slram driver is via
106 the command line. */ 116 the command line. */
107 if (*cmd_line) { 117 if (*cmd_line) {
@@ -128,13 +138,13 @@ static void nmi_end (unsigned irq)
128} 138}
129 139
130static struct hw_interrupt_type nmi_irq_type = { 140static struct hw_interrupt_type nmi_irq_type = {
131 "NMI", 141 .typename = "NMI",
132 irq_zero, /* startup */ 142 .startup = irq_zero, /* startup */
133 irq_nop, /* shutdown */ 143 .shutdown = irq_nop, /* shutdown */
134 irq_nop, /* enable */ 144 .enable = irq_nop, /* enable */
135 irq_nop, /* disable */ 145 .disable = irq_nop, /* disable */
136 irq_nop, /* ack */ 146 .ack = irq_nop, /* ack */
137 nmi_end, /* end */ 147 .end = nmi_end, /* end */
138}; 148};
139 149
140void __init init_IRQ (void) 150void __init init_IRQ (void)
@@ -284,3 +294,33 @@ init_mem_alloc (unsigned long ram_start, unsigned long ram_len)
284 free_area_init_node (0, NODE_DATA(0), zones_size, 294 free_area_init_node (0, NODE_DATA(0), zones_size,
285 ADDR_TO_PAGE (PAGE_OFFSET), 0); 295 ADDR_TO_PAGE (PAGE_OFFSET), 0);
286} 296}
297
298
299
300/* Taken from m68knommu */
301void show_mem(void)
302{
303 unsigned long i;
304 int free = 0, total = 0, reserved = 0, shared = 0;
305 int cached = 0;
306
307 printk(KERN_INFO "\nMem-info:\n");
308 show_free_areas();
309 i = max_mapnr;
310 while (i-- > 0) {
311 total++;
312 if (PageReserved(mem_map+i))
313 reserved++;
314 else if (PageSwapCache(mem_map+i))
315 cached++;
316 else if (!page_count(mem_map+i))
317 free++;
318 else
319 shared += page_count(mem_map+i) - 1;
320 }
321 printk(KERN_INFO "%d pages of RAM\n",total);
322 printk(KERN_INFO "%d free pages\n",free);
323 printk(KERN_INFO "%d reserved pages\n",reserved);
324 printk(KERN_INFO "%d pages shared\n",shared);
325 printk(KERN_INFO "%d pages swap cached\n",cached);
326}
diff --git a/arch/v850/kernel/signal.c b/arch/v850/kernel/signal.c
index 37061e32e1a4..633e4e1b825f 100644
--- a/arch/v850/kernel/signal.c
+++ b/arch/v850/kernel/signal.c
@@ -462,13 +462,12 @@ handle_signal(unsigned long sig, siginfo_t *info, struct k_sigaction *ka,
462 else 462 else
463 setup_frame(sig, ka, oldset, regs); 463 setup_frame(sig, ka, oldset, regs);
464 464
465 if (!(ka->sa.sa_flags & SA_NODEFER)) { 465 spin_lock_irq(&current->sighand->siglock);
466 spin_lock_irq(&current->sighand->siglock); 466 sigorsets(&current->blocked,&current->blocked,&ka->sa.sa_mask);
467 sigorsets(&current->blocked,&current->blocked,&ka->sa.sa_mask); 467 if (!(ka->sa.sa_flags & SA_NODEFER))
468 sigaddset(&current->blocked,sig); 468 sigaddset(&current->blocked,sig);
469 recalc_sigpending(); 469 recalc_sigpending();
470 spin_unlock_irq(&current->sighand->siglock); 470 spin_unlock_irq(&current->sighand->siglock);
471 }
472} 471}
473 472
474/* 473/*
diff --git a/arch/v850/kernel/sim.c b/arch/v850/kernel/sim.c
index e2cc5580fa2a..17049aaa8f11 100644
--- a/arch/v850/kernel/sim.c
+++ b/arch/v850/kernel/sim.c
@@ -73,13 +73,13 @@ static void irq_nop (unsigned irq) { }
73static unsigned irq_zero (unsigned irq) { return 0; } 73static unsigned irq_zero (unsigned irq) { return 0; }
74 74
75static struct hw_interrupt_type sim_irq_type = { 75static struct hw_interrupt_type sim_irq_type = {
76 "IRQ", 76 .typename = "IRQ",
77 irq_zero, /* startup */ 77 .startup = irq_zero, /* startup */
78 irq_nop, /* shutdown */ 78 .shutdown = irq_nop, /* shutdown */
79 irq_nop, /* enable */ 79 .enable = irq_nop, /* enable */
80 irq_nop, /* disable */ 80 .disable = irq_nop, /* disable */
81 irq_nop, /* ack */ 81 .ack = irq_nop, /* ack */
82 irq_nop, /* end */ 82 .end = irq_nop, /* end */
83}; 83};
84 84
85void __init mach_init_irqs (void) 85void __init mach_init_irqs (void)
diff --git a/arch/v850/kernel/time.c b/arch/v850/kernel/time.c
index f722a268238a..ea3fd8844ff0 100644
--- a/arch/v850/kernel/time.c
+++ b/arch/v850/kernel/time.c
@@ -66,7 +66,7 @@ static irqreturn_t timer_interrupt (int irq, void *dummy, struct pt_regs *regs)
66 * CMOS clock accordingly every ~11 minutes. Set_rtc_mmss() has to be 66 * CMOS clock accordingly every ~11 minutes. Set_rtc_mmss() has to be
67 * called as close as possible to 500 ms before the new second starts. 67 * called as close as possible to 500 ms before the new second starts.
68 */ 68 */
69 if ((time_status & STA_UNSYNC) == 0 && 69 if (ntp_synced() &&
70 xtime.tv_sec > last_rtc_update + 660 && 70 xtime.tv_sec > last_rtc_update + 660 &&
71 (xtime.tv_nsec / 1000) >= 500000 - ((unsigned) TICK_SIZE) / 2 && 71 (xtime.tv_nsec / 1000) >= 500000 - ((unsigned) TICK_SIZE) / 2 &&
72 (xtime.tv_nsec / 1000) <= 500000 + ((unsigned) TICK_SIZE) / 2) { 72 (xtime.tv_nsec / 1000) <= 500000 + ((unsigned) TICK_SIZE) / 2) {
@@ -169,10 +169,7 @@ int do_settimeofday(struct timespec *tv)
169 xtime.tv_sec = tv->tv_sec; 169 xtime.tv_sec = tv->tv_sec;
170 xtime.tv_nsec = tv->tv_nsec; 170 xtime.tv_nsec = tv->tv_nsec;
171 171
172 time_adjust = 0; /* stop active adjtime () */ 172 ntp_clear();
173 time_status |= STA_UNSYNC;
174 time_maxerror = NTP_PHASE_LIMIT;
175 time_esterror = NTP_PHASE_LIMIT;
176 173
177 write_sequnlock_irq (&xtime_lock); 174 write_sequnlock_irq (&xtime_lock);
178 clock_was_set(); 175 clock_was_set();