diff options
author | Muli Ben-Yehuda <muli@il.ibm.com> | 2006-12-06 20:14:06 -0500 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-12-06 20:14:06 -0500 |
commit | eae93755540bae18aff46b8a0e621b5d65bd5380 (patch) | |
tree | e1228183341e2a80200c256ccaac33493444fc5d /include/asm-x86_64 | |
parent | b34e90b8f0f30151349134f87b5dc6ef75a5218c (diff) |
[PATCH] Calgary: check BBAR ioremap success when ioremapping
This patch cleans up the previous "Use BIOS supplied BBAR information"
patch. Mostly stylistic clenaups, but also check for ioremap failure
when we ioremap the BBAR rather than when trying to use it.
Signed-off-by: Muli Ben-Yehuda <muli@il.ibm.com>
Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Andi Kleen <ak@suse.de>
Acked-by: Laurent Vivier <Laurent.Vivier@bull.net>
Diffstat (limited to 'include/asm-x86_64')
-rw-r--r-- | include/asm-x86_64/rio.h | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/include/asm-x86_64/rio.h b/include/asm-x86_64/rio.h index 1f315c39d76e..c7350f6d2015 100644 --- a/include/asm-x86_64/rio.h +++ b/include/asm-x86_64/rio.h | |||
@@ -3,7 +3,6 @@ | |||
3 | * and include/asm-i386/mach-default/bios_ebda.h | 3 | * and include/asm-i386/mach-default/bios_ebda.h |
4 | * | 4 | * |
5 | * Author: Laurent Vivier <Laurent.Vivier@bull.net> | 5 | * Author: Laurent Vivier <Laurent.Vivier@bull.net> |
6 | * | ||
7 | */ | 6 | */ |
8 | 7 | ||
9 | #ifndef __ASM_RIO_H | 8 | #ifndef __ASM_RIO_H |
@@ -19,7 +18,7 @@ struct rio_table_hdr { | |||
19 | 18 | ||
20 | struct scal_detail { | 19 | struct scal_detail { |
21 | u8 node_id; /* Scalability Node ID */ | 20 | u8 node_id; /* Scalability Node ID */ |
22 | u32 CBAR; /* Address of 1MB register space */ | 21 | u32 CBAR; /* Address of 1MB register space */ |
23 | u8 port0node; /* Node ID port connected to: 0xFF=None */ | 22 | u8 port0node; /* Node ID port connected to: 0xFF=None */ |
24 | u8 port0port; /* Port num port connected to: 0,1,2, or */ | 23 | u8 port0port; /* Port num port connected to: 0,1,2, or */ |
25 | /* 0xFF=None */ | 24 | /* 0xFF=None */ |
@@ -34,7 +33,7 @@ struct scal_detail { | |||
34 | 33 | ||
35 | struct rio_detail { | 34 | struct rio_detail { |
36 | u8 node_id; /* RIO Node ID */ | 35 | u8 node_id; /* RIO Node ID */ |
37 | u32 BBAR; /* Address of 1MB register space */ | 36 | u32 BBAR; /* Address of 1MB register space */ |
38 | u8 type; /* Type of device */ | 37 | u8 type; /* Type of device */ |
39 | u8 owner_id; /* Node ID of Hurricane that owns this */ | 38 | u8 owner_id; /* Node ID of Hurricane that owns this */ |
40 | /* node */ | 39 | /* node */ |
@@ -65,10 +64,9 @@ enum { | |||
65 | * there is a real-mode segmented pointer pointing to the | 64 | * there is a real-mode segmented pointer pointing to the |
66 | * 4K EBDA area at 0x40E. | 65 | * 4K EBDA area at 0x40E. |
67 | */ | 66 | */ |
68 | |||
69 | static inline unsigned long get_bios_ebda(void) | 67 | static inline unsigned long get_bios_ebda(void) |
70 | { | 68 | { |
71 | unsigned long address= *(unsigned short *)phys_to_virt(0x40Eul); | 69 | unsigned long address = *(unsigned short *)phys_to_virt(0x40EUL); |
72 | address <<= 4; | 70 | address <<= 4; |
73 | return address; | 71 | return address; |
74 | } | 72 | } |