diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/au1000/common/pci.c | 8 | ||||
-rw-r--r-- | arch/mips/kernel/linux32.c | 16 | ||||
-rw-r--r-- | arch/mips/kernel/scall64-n32.S | 4 | ||||
-rw-r--r-- | arch/mips/philips/pnx8550/common/time.c | 1 |
4 files changed, 21 insertions, 8 deletions
diff --git a/arch/mips/au1000/common/pci.c b/arch/mips/au1000/common/pci.c index da591f674893..9f8ce08e173b 100644 --- a/arch/mips/au1000/common/pci.c +++ b/arch/mips/au1000/common/pci.c | |||
@@ -39,15 +39,15 @@ | |||
39 | 39 | ||
40 | /* TBD */ | 40 | /* TBD */ |
41 | static struct resource pci_io_resource = { | 41 | static struct resource pci_io_resource = { |
42 | .start = PCI_IO_START, | 42 | .start = (resource_size_t)PCI_IO_START, |
43 | .end = PCI_IO_END, | 43 | .end = (resource_size_t)PCI_IO_END, |
44 | .name = "PCI IO space", | 44 | .name = "PCI IO space", |
45 | .flags = IORESOURCE_IO | 45 | .flags = IORESOURCE_IO |
46 | }; | 46 | }; |
47 | 47 | ||
48 | static struct resource pci_mem_resource = { | 48 | static struct resource pci_mem_resource = { |
49 | .start = PCI_MEM_START, | 49 | .start = (resource_size_t)PCI_MEM_START, |
50 | .end = PCI_MEM_END, | 50 | .end = (resource_size_t)PCI_MEM_END, |
51 | .name = "PCI memory space", | 51 | .name = "PCI memory space", |
52 | .flags = IORESOURCE_MEM | 52 | .flags = IORESOURCE_MEM |
53 | }; | 53 | }; |
diff --git a/arch/mips/kernel/linux32.c b/arch/mips/kernel/linux32.c index b061c9aa6302..de3fae260ff8 100644 --- a/arch/mips/kernel/linux32.c +++ b/arch/mips/kernel/linux32.c | |||
@@ -440,14 +440,26 @@ sys32_ipc (u32 call, int first, int second, int third, u32 ptr, u32 fifth) | |||
440 | } | 440 | } |
441 | 441 | ||
442 | #ifdef CONFIG_MIPS32_N32 | 442 | #ifdef CONFIG_MIPS32_N32 |
443 | asmlinkage long sysn32_semctl(int semid, int semnum, int cmd, union semun arg) | 443 | asmlinkage long sysn32_semctl(int semid, int semnum, int cmd, u32 arg) |
444 | { | 444 | { |
445 | /* compat_sys_semctl expects a pointer to union semun */ | 445 | /* compat_sys_semctl expects a pointer to union semun */ |
446 | u32 __user *uptr = compat_alloc_user_space(sizeof(u32)); | 446 | u32 __user *uptr = compat_alloc_user_space(sizeof(u32)); |
447 | if (put_user(ptr_to_compat(arg.__pad), uptr)) | 447 | if (put_user(arg, uptr)) |
448 | return -EFAULT; | 448 | return -EFAULT; |
449 | return compat_sys_semctl(semid, semnum, cmd, uptr); | 449 | return compat_sys_semctl(semid, semnum, cmd, uptr); |
450 | } | 450 | } |
451 | |||
452 | asmlinkage long sysn32_msgsnd(int msqid, u32 msgp, unsigned msgsz, int msgflg) | ||
453 | { | ||
454 | return compat_sys_msgsnd(msqid, msgsz, msgflg, compat_ptr(msgp)); | ||
455 | } | ||
456 | |||
457 | asmlinkage long sysn32_msgrcv(int msqid, u32 msgp, size_t msgsz, int msgtyp, | ||
458 | int msgflg) | ||
459 | { | ||
460 | return compat_sys_msgrcv(msqid, msgsz, msgtyp, msgflg, IPC_64, | ||
461 | compat_ptr(msgp)); | ||
462 | } | ||
451 | #endif | 463 | #endif |
452 | 464 | ||
453 | struct sysctl_args32 | 465 | struct sysctl_args32 |
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S index 34567d81f940..a7bff2a54723 100644 --- a/arch/mips/kernel/scall64-n32.S +++ b/arch/mips/kernel/scall64-n32.S | |||
@@ -187,8 +187,8 @@ EXPORT(sysn32_call_table) | |||
187 | PTR sysn32_semctl | 187 | PTR sysn32_semctl |
188 | PTR sys_shmdt /* 6065 */ | 188 | PTR sys_shmdt /* 6065 */ |
189 | PTR sys_msgget | 189 | PTR sys_msgget |
190 | PTR compat_sys_msgsnd | 190 | PTR sysn32_msgsnd |
191 | PTR compat_sys_msgrcv | 191 | PTR sysn32_msgrcv |
192 | PTR compat_sys_msgctl | 192 | PTR compat_sys_msgctl |
193 | PTR compat_sys_fcntl /* 6070 */ | 193 | PTR compat_sys_fcntl /* 6070 */ |
194 | PTR sys_flock | 194 | PTR sys_flock |
diff --git a/arch/mips/philips/pnx8550/common/time.c b/arch/mips/philips/pnx8550/common/time.c index f80acae07cee..68def3880a1c 100644 --- a/arch/mips/philips/pnx8550/common/time.c +++ b/arch/mips/philips/pnx8550/common/time.c | |||
@@ -79,6 +79,7 @@ void pnx8550_time_init(void) | |||
79 | */ | 79 | */ |
80 | mips_hpt_frequency = 27UL * ((1000000UL * n)/(m * pow2p)); | 80 | mips_hpt_frequency = 27UL * ((1000000UL * n)/(m * pow2p)); |
81 | cpj = (mips_hpt_frequency + HZ / 2) / HZ; | 81 | cpj = (mips_hpt_frequency + HZ / 2) / HZ; |
82 | write_c0_count(0); | ||
82 | timer_ack(); | 83 | timer_ack(); |
83 | 84 | ||
84 | /* Setup Timer 2 */ | 85 | /* Setup Timer 2 */ |