aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-frv
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2005-11-28 16:43:51 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2005-11-28 17:42:23 -0500
commit8080f231224ccd3169f39e73fd750ba98d5b98a7 (patch)
treee86762b01f248dbf735e786783d3d9eb0e7c9950 /include/asm-frv
parentc13cf856cbe16aec3007604dc013cbf3a16c6686 (diff)
[PATCH] FRV: Make the FRV arch work again
The attached patch implements a bunch of small changes to the FRV arch to make it work again. It deals with the following problems: (1) SEM_DEBUG should be SEMAPHORE_DEBUG. (2) The argument list to pcibios_penalize_isa_irq() has changed. (3) CONFIG_HIGHMEM can't be used directly in #if as it may not be defined. (4) page->private is no longer directly accessible. (5) linux/hardirq.h assumes asm/hardirq.h will include linux/irq.h (6) The IDE MMIO access functions are given pointers, not integers, and so get type casting errors. (7) __pa() is passed an explicit u64 type in drivers/char/mem.c, but that can't be cast directly to a pointer on a 32-bit platform. (8) SEMAPHORE_DEBUG should not be contingent on WAITQUEUE_DEBUG as that no longer exists. (9) PREEMPT_ACTIVE is too low a value. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-frv')
-rw-r--r--include/asm-frv/hardirq.h1
-rw-r--r--include/asm-frv/ide.h8
-rw-r--r--include/asm-frv/page.h4
-rw-r--r--include/asm-frv/semaphore.h2
-rw-r--r--include/asm-frv/thread_info.h2
5 files changed, 9 insertions, 8 deletions
diff --git a/include/asm-frv/hardirq.h b/include/asm-frv/hardirq.h
index 5248ca054909..685123981e8b 100644
--- a/include/asm-frv/hardirq.h
+++ b/include/asm-frv/hardirq.h
@@ -14,6 +14,7 @@
14 14
15#include <linux/config.h> 15#include <linux/config.h>
16#include <linux/threads.h> 16#include <linux/threads.h>
17#include <linux/irq.h>
17 18
18typedef struct { 19typedef struct {
19 unsigned int __softirq_pending; 20 unsigned int __softirq_pending;
diff --git a/include/asm-frv/ide.h b/include/asm-frv/ide.h
index f9caecf7e3c0..ae031eaa3dd2 100644
--- a/include/asm-frv/ide.h
+++ b/include/asm-frv/ide.h
@@ -33,10 +33,10 @@
33/* 33/*
34 * some bits needed for parts of the IDE subsystem to compile 34 * some bits needed for parts of the IDE subsystem to compile
35 */ 35 */
36#define __ide_mm_insw(port, addr, n) insw(port, addr, n) 36#define __ide_mm_insw(port, addr, n) insw((unsigned long) (port), addr, n)
37#define __ide_mm_insl(port, addr, n) insl(port, addr, n) 37#define __ide_mm_insl(port, addr, n) insl((unsigned long) (port), addr, n)
38#define __ide_mm_outsw(port, addr, n) outsw(port, addr, n) 38#define __ide_mm_outsw(port, addr, n) outsw((unsigned long) (port), addr, n)
39#define __ide_mm_outsl(port, addr, n) outsl(port, addr, n) 39#define __ide_mm_outsl(port, addr, n) outsl((unsigned long) (port), addr, n)
40 40
41 41
42#endif /* __KERNEL__ */ 42#endif /* __KERNEL__ */
diff --git a/include/asm-frv/page.h b/include/asm-frv/page.h
index 4feba567e7fd..b8221b611b5c 100644
--- a/include/asm-frv/page.h
+++ b/include/asm-frv/page.h
@@ -47,8 +47,8 @@ typedef struct { unsigned long pgprot; } pgprot_t;
47 47
48#define devmem_is_allowed(pfn) 1 48#define devmem_is_allowed(pfn) 1
49 49
50#define __pa(vaddr) virt_to_phys((void *) vaddr) 50#define __pa(vaddr) virt_to_phys((void *) (unsigned long) (vaddr))
51#define __va(paddr) phys_to_virt((unsigned long) paddr) 51#define __va(paddr) phys_to_virt((unsigned long) (paddr))
52 52
53#define pfn_to_kaddr(pfn) __va((pfn) << PAGE_SHIFT) 53#define pfn_to_kaddr(pfn) __va((pfn) << PAGE_SHIFT)
54 54
diff --git a/include/asm-frv/semaphore.h b/include/asm-frv/semaphore.h
index b18396288df1..907c5c3643cc 100644
--- a/include/asm-frv/semaphore.h
+++ b/include/asm-frv/semaphore.h
@@ -20,7 +20,7 @@
20#include <linux/spinlock.h> 20#include <linux/spinlock.h>
21#include <linux/rwsem.h> 21#include <linux/rwsem.h>
22 22
23#define SEMAPHORE_DEBUG WAITQUEUE_DEBUG 23#define SEMAPHORE_DEBUG 0
24 24
25/* 25/*
26 * the semaphore definition 26 * the semaphore definition
diff --git a/include/asm-frv/thread_info.h b/include/asm-frv/thread_info.h
index c8cba7836f0d..60f6b2aee76d 100644
--- a/include/asm-frv/thread_info.h
+++ b/include/asm-frv/thread_info.h
@@ -58,7 +58,7 @@ struct thread_info {
58 58
59#endif 59#endif
60 60
61#define PREEMPT_ACTIVE 0x4000000 61#define PREEMPT_ACTIVE 0x10000000
62 62
63/* 63/*
64 * macros/functions for gaining access to the thread information structure 64 * macros/functions for gaining access to the thread information structure