diff options
author | Paul Mackerras <paulus@samba.org> | 2007-07-10 23:28:26 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-07-10 23:28:26 -0400 |
commit | bf22f6fe2d72b4d7e9035be8ceb340414cf490e3 (patch) | |
tree | 14085d90de0428316479fe6de8a0c6d32e6e65e2 /arch/powerpc/platforms/iseries | |
parent | 4eb6bf6bfb580afaf1e1a1d30cba17a078530cf4 (diff) | |
parent | 93ab471889c6662b42ce7da257f31f24c08d7d9e (diff) |
Merge branch 'for-2.6.23' into merge
Diffstat (limited to 'arch/powerpc/platforms/iseries')
-rw-r--r-- | arch/powerpc/platforms/iseries/call_hpt.h | 9 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/htab.c | 8 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/pci.c | 7 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/setup.c | 6 |
4 files changed, 17 insertions, 13 deletions
diff --git a/arch/powerpc/platforms/iseries/call_hpt.h b/arch/powerpc/platforms/iseries/call_hpt.h index a843b0f87b72..8d95fe4b554e 100644 --- a/arch/powerpc/platforms/iseries/call_hpt.h +++ b/arch/powerpc/platforms/iseries/call_hpt.h | |||
@@ -76,24 +76,25 @@ static inline u64 HvCallHpt_invalidateSetSwBitsGet(u32 hpteIndex, u8 bitson, | |||
76 | return compressedStatus; | 76 | return compressedStatus; |
77 | } | 77 | } |
78 | 78 | ||
79 | static inline u64 HvCallHpt_findValid(hpte_t *hpte, u64 vpn) | 79 | static inline u64 HvCallHpt_findValid(struct hash_pte *hpte, u64 vpn) |
80 | { | 80 | { |
81 | return HvCall3Ret16(HvCallHptFindValid, hpte, vpn, 0, 0); | 81 | return HvCall3Ret16(HvCallHptFindValid, hpte, vpn, 0, 0); |
82 | } | 82 | } |
83 | 83 | ||
84 | static inline u64 HvCallHpt_findNextValid(hpte_t *hpte, u32 hpteIndex, | 84 | static inline u64 HvCallHpt_findNextValid(struct hash_pte *hpte, u32 hpteIndex, |
85 | u8 bitson, u8 bitsoff) | 85 | u8 bitson, u8 bitsoff) |
86 | { | 86 | { |
87 | return HvCall3Ret16(HvCallHptFindNextValid, hpte, hpteIndex, | 87 | return HvCall3Ret16(HvCallHptFindNextValid, hpte, hpteIndex, |
88 | bitson, bitsoff); | 88 | bitson, bitsoff); |
89 | } | 89 | } |
90 | 90 | ||
91 | static inline void HvCallHpt_get(hpte_t *hpte, u32 hpteIndex) | 91 | static inline void HvCallHpt_get(struct hash_pte *hpte, u32 hpteIndex) |
92 | { | 92 | { |
93 | HvCall2Ret16(HvCallHptGet, hpte, hpteIndex, 0); | 93 | HvCall2Ret16(HvCallHptGet, hpte, hpteIndex, 0); |
94 | } | 94 | } |
95 | 95 | ||
96 | static inline void HvCallHpt_addValidate(u32 hpteIndex, u32 hBit, hpte_t *hpte) | 96 | static inline void HvCallHpt_addValidate(u32 hpteIndex, u32 hBit, |
97 | struct hash_pte *hpte) | ||
97 | { | 98 | { |
98 | HvCall4(HvCallHptAddValidate, hpteIndex, hBit, hpte->v, hpte->r); | 99 | HvCall4(HvCallHptAddValidate, hpteIndex, hBit, hpte->v, hpte->r); |
99 | } | 100 | } |
diff --git a/arch/powerpc/platforms/iseries/htab.c b/arch/powerpc/platforms/iseries/htab.c index ed44dfceaa45..b4e2c7a038e1 100644 --- a/arch/powerpc/platforms/iseries/htab.c +++ b/arch/powerpc/platforms/iseries/htab.c | |||
@@ -44,7 +44,7 @@ long iSeries_hpte_insert(unsigned long hpte_group, unsigned long va, | |||
44 | unsigned long vflags, int psize) | 44 | unsigned long vflags, int psize) |
45 | { | 45 | { |
46 | long slot; | 46 | long slot; |
47 | hpte_t lhpte; | 47 | struct hash_pte lhpte; |
48 | int secondary = 0; | 48 | int secondary = 0; |
49 | 49 | ||
50 | BUG_ON(psize != MMU_PAGE_4K); | 50 | BUG_ON(psize != MMU_PAGE_4K); |
@@ -99,7 +99,7 @@ long iSeries_hpte_insert(unsigned long hpte_group, unsigned long va, | |||
99 | 99 | ||
100 | static unsigned long iSeries_hpte_getword0(unsigned long slot) | 100 | static unsigned long iSeries_hpte_getword0(unsigned long slot) |
101 | { | 101 | { |
102 | hpte_t hpte; | 102 | struct hash_pte hpte; |
103 | 103 | ||
104 | HvCallHpt_get(&hpte, slot); | 104 | HvCallHpt_get(&hpte, slot); |
105 | return hpte.v; | 105 | return hpte.v; |
@@ -144,7 +144,7 @@ static long iSeries_hpte_remove(unsigned long hpte_group) | |||
144 | static long iSeries_hpte_updatepp(unsigned long slot, unsigned long newpp, | 144 | static long iSeries_hpte_updatepp(unsigned long slot, unsigned long newpp, |
145 | unsigned long va, int psize, int local) | 145 | unsigned long va, int psize, int local) |
146 | { | 146 | { |
147 | hpte_t hpte; | 147 | struct hash_pte hpte; |
148 | unsigned long want_v; | 148 | unsigned long want_v; |
149 | 149 | ||
150 | iSeries_hlock(slot); | 150 | iSeries_hlock(slot); |
@@ -176,7 +176,7 @@ static long iSeries_hpte_updatepp(unsigned long slot, unsigned long newpp, | |||
176 | */ | 176 | */ |
177 | static long iSeries_hpte_find(unsigned long vpn) | 177 | static long iSeries_hpte_find(unsigned long vpn) |
178 | { | 178 | { |
179 | hpte_t hpte; | 179 | struct hash_pte hpte; |
180 | long slot; | 180 | long slot; |
181 | 181 | ||
182 | /* | 182 | /* |
diff --git a/arch/powerpc/platforms/iseries/pci.c b/arch/powerpc/platforms/iseries/pci.c index 9c974227155e..da87162000f0 100644 --- a/arch/powerpc/platforms/iseries/pci.c +++ b/arch/powerpc/platforms/iseries/pci.c | |||
@@ -742,6 +742,11 @@ void __init iSeries_pcibios_init(void) | |||
742 | /* Install IO hooks */ | 742 | /* Install IO hooks */ |
743 | ppc_pci_io = iseries_pci_io; | 743 | ppc_pci_io = iseries_pci_io; |
744 | 744 | ||
745 | /* iSeries has no IO space in the common sense, it needs to set | ||
746 | * the IO base to 0 | ||
747 | */ | ||
748 | pci_io_base = 0; | ||
749 | |||
745 | if (root == NULL) { | 750 | if (root == NULL) { |
746 | printk(KERN_CRIT "iSeries_pcibios_init: can't find root " | 751 | printk(KERN_CRIT "iSeries_pcibios_init: can't find root " |
747 | "of device tree\n"); | 752 | "of device tree\n"); |
@@ -763,7 +768,7 @@ void __init iSeries_pcibios_init(void) | |||
763 | if (phb == NULL) | 768 | if (phb == NULL) |
764 | continue; | 769 | continue; |
765 | 770 | ||
766 | phb->pci_mem_offset = phb->local_number = bus; | 771 | phb->pci_mem_offset = bus; |
767 | phb->first_busno = bus; | 772 | phb->first_busno = bus; |
768 | phb->last_busno = bus; | 773 | phb->last_busno = bus; |
769 | phb->ops = &iSeries_pci_ops; | 774 | phb->ops = &iSeries_pci_ops; |
diff --git a/arch/powerpc/platforms/iseries/setup.c b/arch/powerpc/platforms/iseries/setup.c index 7f5dcee814d4..13a8b1908ded 100644 --- a/arch/powerpc/platforms/iseries/setup.c +++ b/arch/powerpc/platforms/iseries/setup.c | |||
@@ -79,8 +79,6 @@ extern void iSeries_pci_final_fixup(void); | |||
79 | static void iSeries_pci_final_fixup(void) { } | 79 | static void iSeries_pci_final_fixup(void) { } |
80 | #endif | 80 | #endif |
81 | 81 | ||
82 | extern unsigned long iSeries_recal_tb; | ||
83 | extern unsigned long iSeries_recal_titan; | ||
84 | 82 | ||
85 | struct MemoryBlock { | 83 | struct MemoryBlock { |
86 | unsigned long absStart; | 84 | unsigned long absStart; |
@@ -292,8 +290,8 @@ static void __init iSeries_init_early(void) | |||
292 | { | 290 | { |
293 | DBG(" -> iSeries_init_early()\n"); | 291 | DBG(" -> iSeries_init_early()\n"); |
294 | 292 | ||
295 | iSeries_recal_tb = get_tb(); | 293 | /* Snapshot the timebase, for use in later recalibration */ |
296 | iSeries_recal_titan = HvCallXm_loadTod(); | 294 | iSeries_time_init_early(); |
297 | 295 | ||
298 | /* | 296 | /* |
299 | * Initialize the DMA/TCE management | 297 | * Initialize the DMA/TCE management |