diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2008-04-10 02:44:30 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2008-04-15 07:21:25 -0400 |
commit | f9a5e6a27d2aa1b37758abb031f37615ac367cca (patch) | |
tree | 7902aefe6388625fcedca42484fa59345e95e793 /arch/powerpc/platforms | |
parent | 30ff2e87ed55e83b4eb436f5f14a7e49ff81ad99 (diff) |
[POWERPC] iSeries: Localise and constify some iSeries data
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms')
-rw-r--r-- | arch/powerpc/platforms/iseries/ipl_parms.h | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/lpardata.c | 14 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/naca.h | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/release_data.h | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/spcomm_area.h | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/vpd_areas.h | 4 |
6 files changed, 11 insertions, 15 deletions
diff --git a/arch/powerpc/platforms/iseries/ipl_parms.h b/arch/powerpc/platforms/iseries/ipl_parms.h index 77c135ddbf1b..83e4ca42fc57 100644 --- a/arch/powerpc/platforms/iseries/ipl_parms.h +++ b/arch/powerpc/platforms/iseries/ipl_parms.h | |||
@@ -65,6 +65,4 @@ struct ItIplParmsReal { | |||
65 | u64 xRsvd13; // Reserved x38-x3F | 65 | u64 xRsvd13; // Reserved x38-x3F |
66 | }; | 66 | }; |
67 | 67 | ||
68 | extern struct ItIplParmsReal xItIplParmsReal; | ||
69 | |||
70 | #endif /* _ISERIES_IPL_PARMS_H */ | 68 | #endif /* _ISERIES_IPL_PARMS_H */ |
diff --git a/arch/powerpc/platforms/iseries/lpardata.c b/arch/powerpc/platforms/iseries/lpardata.c index 2331d97e49f3..98bd2d37038a 100644 --- a/arch/powerpc/platforms/iseries/lpardata.c +++ b/arch/powerpc/platforms/iseries/lpardata.c | |||
@@ -31,7 +31,7 @@ | |||
31 | /* The HvReleaseData is the root of the information shared between | 31 | /* The HvReleaseData is the root of the information shared between |
32 | * the hypervisor and Linux. | 32 | * the hypervisor and Linux. |
33 | */ | 33 | */ |
34 | struct HvReleaseData hvReleaseData = { | 34 | const struct HvReleaseData hvReleaseData = { |
35 | .xDesc = 0xc8a5d9c4, /* "HvRD" ebcdic */ | 35 | .xDesc = 0xc8a5d9c4, /* "HvRD" ebcdic */ |
36 | .xSize = sizeof(struct HvReleaseData), | 36 | .xSize = sizeof(struct HvReleaseData), |
37 | .xVpdAreasPtrOffset = offsetof(struct naca_struct, xItVpdAreas), | 37 | .xVpdAreasPtrOffset = offsetof(struct naca_struct, xItVpdAreas), |
@@ -186,7 +186,7 @@ struct ItLpNaca itLpNaca = { | |||
186 | }; | 186 | }; |
187 | 187 | ||
188 | /* May be filled in by the hypervisor so cannot end up in the BSS */ | 188 | /* May be filled in by the hypervisor so cannot end up in the BSS */ |
189 | struct ItIplParmsReal xItIplParmsReal __attribute__((__section__(".data"))); | 189 | static struct ItIplParmsReal xItIplParmsReal __attribute__((__section__(".data"))); |
190 | 190 | ||
191 | /* May be filled in by the hypervisor so cannot end up in the BSS */ | 191 | /* May be filled in by the hypervisor so cannot end up in the BSS */ |
192 | struct ItExtVpdPanel xItExtVpdPanel __attribute__((__section__(".data"))); | 192 | struct ItExtVpdPanel xItExtVpdPanel __attribute__((__section__(".data"))); |
@@ -209,14 +209,14 @@ u64 xMsVpd[3400] __attribute__((__section__(".data"))); | |||
209 | 209 | ||
210 | /* Space for Recovery Log Buffer */ | 210 | /* Space for Recovery Log Buffer */ |
211 | /* May be filled in by the hypervisor so cannot end up in the BSS */ | 211 | /* May be filled in by the hypervisor so cannot end up in the BSS */ |
212 | u64 xRecoveryLogBuffer[32] __attribute__((__section__(".data"))); | 212 | static u64 xRecoveryLogBuffer[32] __attribute__((__section__(".data"))); |
213 | 213 | ||
214 | struct SpCommArea xSpCommArea = { | 214 | static const struct SpCommArea xSpCommArea = { |
215 | .xDesc = 0xE2D7C3C2, | 215 | .xDesc = 0xE2D7C3C2, |
216 | .xFormat = 1, | 216 | .xFormat = 1, |
217 | }; | 217 | }; |
218 | 218 | ||
219 | static struct ItLpRegSave iseries_reg_save[] = { | 219 | static const struct ItLpRegSave iseries_reg_save[] = { |
220 | [0 ... (NR_CPUS-1)] = { | 220 | [0 ... (NR_CPUS-1)] = { |
221 | .xDesc = 0xd397d9e2, /* "LpRS" */ | 221 | .xDesc = 0xd397d9e2, /* "LpRS" */ |
222 | .xSize = sizeof(struct ItLpRegSave), | 222 | .xSize = sizeof(struct ItLpRegSave), |
@@ -229,7 +229,7 @@ static struct ItLpRegSave iseries_reg_save[] = { | |||
229 | .reg_save_ptr = &iseries_reg_save[number], \ | 229 | .reg_save_ptr = &iseries_reg_save[number], \ |
230 | } | 230 | } |
231 | 231 | ||
232 | struct alpaca alpaca[] = { | 232 | const struct alpaca alpaca[] = { |
233 | ALPACA_INIT( 0), | 233 | ALPACA_INIT( 0), |
234 | #if NR_CPUS > 1 | 234 | #if NR_CPUS > 1 |
235 | ALPACA_INIT( 1), ALPACA_INIT( 2), ALPACA_INIT( 3), | 235 | ALPACA_INIT( 1), ALPACA_INIT( 2), ALPACA_INIT( 3), |
@@ -265,7 +265,7 @@ struct alpaca alpaca[] = { | |||
265 | * the Naca via the HvReleaseData area. The HvReleaseData has the | 265 | * the Naca via the HvReleaseData area. The HvReleaseData has the |
266 | * offset into the Naca of the pointer to the ItVpdAreas. | 266 | * offset into the Naca of the pointer to the ItVpdAreas. |
267 | */ | 267 | */ |
268 | struct ItVpdAreas itVpdAreas = { | 268 | const struct ItVpdAreas itVpdAreas = { |
269 | .xSlicDesc = 0xc9a3e5c1, /* "ItVA" */ | 269 | .xSlicDesc = 0xc9a3e5c1, /* "ItVA" */ |
270 | .xSlicSize = sizeof(struct ItVpdAreas), | 270 | .xSlicSize = sizeof(struct ItVpdAreas), |
271 | .xSlicVpdEntries = ItVpdMaxEntries, /* # VPD array entries */ | 271 | .xSlicVpdEntries = ItVpdMaxEntries, /* # VPD array entries */ |
diff --git a/arch/powerpc/platforms/iseries/naca.h b/arch/powerpc/platforms/iseries/naca.h index ab2372eb8d2e..f01708e12862 100644 --- a/arch/powerpc/platforms/iseries/naca.h +++ b/arch/powerpc/platforms/iseries/naca.h | |||
@@ -14,7 +14,7 @@ | |||
14 | 14 | ||
15 | struct naca_struct { | 15 | struct naca_struct { |
16 | /* Kernel only data - undefined for user space */ | 16 | /* Kernel only data - undefined for user space */ |
17 | void *xItVpdAreas; /* VPD Data 0x00 */ | 17 | const void *xItVpdAreas; /* VPD Data 0x00 */ |
18 | void *xRamDisk; /* iSeries ramdisk 0x08 */ | 18 | void *xRamDisk; /* iSeries ramdisk 0x08 */ |
19 | u64 xRamDiskSize; /* In pages 0x10 */ | 19 | u64 xRamDiskSize; /* In pages 0x10 */ |
20 | }; | 20 | }; |
diff --git a/arch/powerpc/platforms/iseries/release_data.h b/arch/powerpc/platforms/iseries/release_data.h index 66189fd2e32d..6ad7d843e8fc 100644 --- a/arch/powerpc/platforms/iseries/release_data.h +++ b/arch/powerpc/platforms/iseries/release_data.h | |||
@@ -58,6 +58,6 @@ struct HvReleaseData { | |||
58 | char xRsvd3[20]; /* Reserved x2C-x3F */ | 58 | char xRsvd3[20]; /* Reserved x2C-x3F */ |
59 | }; | 59 | }; |
60 | 60 | ||
61 | extern struct HvReleaseData hvReleaseData; | 61 | extern const struct HvReleaseData hvReleaseData; |
62 | 62 | ||
63 | #endif /* _ISERIES_RELEASE_DATA_H */ | 63 | #endif /* _ISERIES_RELEASE_DATA_H */ |
diff --git a/arch/powerpc/platforms/iseries/spcomm_area.h b/arch/powerpc/platforms/iseries/spcomm_area.h index 6e3b685115c9..598b7c14573a 100644 --- a/arch/powerpc/platforms/iseries/spcomm_area.h +++ b/arch/powerpc/platforms/iseries/spcomm_area.h | |||
@@ -31,6 +31,4 @@ struct SpCommArea { | |||
31 | u8 xRsvd2[80]; // Reserved 030-07F | 31 | u8 xRsvd2[80]; // Reserved 030-07F |
32 | }; | 32 | }; |
33 | 33 | ||
34 | extern struct SpCommArea xSpCommArea; | ||
35 | |||
36 | #endif /* _ISERIES_SPCOMM_AREA_H */ | 34 | #endif /* _ISERIES_SPCOMM_AREA_H */ |
diff --git a/arch/powerpc/platforms/iseries/vpd_areas.h b/arch/powerpc/platforms/iseries/vpd_areas.h index 601e6dd860ed..feb001f3a5fe 100644 --- a/arch/powerpc/platforms/iseries/vpd_areas.h +++ b/arch/powerpc/platforms/iseries/vpd_areas.h | |||
@@ -80,9 +80,9 @@ struct ItVpdAreas { | |||
80 | u32 xPlicDmaLens[ItDmaMaxEntries];// Array of DMA lengths 080-0A7 | 80 | u32 xPlicDmaLens[ItDmaMaxEntries];// Array of DMA lengths 080-0A7 |
81 | u32 xPlicDmaToks[ItDmaMaxEntries];// Array of DMA tokens 0A8-0CF | 81 | u32 xPlicDmaToks[ItDmaMaxEntries];// Array of DMA tokens 0A8-0CF |
82 | u32 xSlicVpdLens[ItVpdMaxEntries];// Array of VPD lengths 0D0-12F | 82 | u32 xSlicVpdLens[ItVpdMaxEntries];// Array of VPD lengths 0D0-12F |
83 | void *xSlicVpdAdrs[ItVpdMaxEntries];// Array of VPD buffers 130-1EF | 83 | const void *xSlicVpdAdrs[ItVpdMaxEntries];// Array of VPD buffers 130-1EF |
84 | }; | 84 | }; |
85 | 85 | ||
86 | extern struct ItVpdAreas itVpdAreas; | 86 | extern const struct ItVpdAreas itVpdAreas; |
87 | 87 | ||
88 | #endif /* _ISERIES_VPD_AREAS_H */ | 88 | #endif /* _ISERIES_VPD_AREAS_H */ |