[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>
This commit is contained in:
Stephen Rothwell 2008-04-10 16:44:30 +10:00 committed by Paul Mackerras
parent 30ff2e87ed
commit f9a5e6a27d
7 changed files with 12 additions and 16 deletions

View file

@ -65,6 +65,4 @@ struct ItIplParmsReal {
u64 xRsvd13; // Reserved x38-x3F u64 xRsvd13; // Reserved x38-x3F
}; };
extern struct ItIplParmsReal xItIplParmsReal;
#endif /* _ISERIES_IPL_PARMS_H */ #endif /* _ISERIES_IPL_PARMS_H */

View file

@ -31,7 +31,7 @@
/* The HvReleaseData is the root of the information shared between /* The HvReleaseData is the root of the information shared between
* the hypervisor and Linux. * the hypervisor and Linux.
*/ */
struct HvReleaseData hvReleaseData = { const struct HvReleaseData hvReleaseData = {
.xDesc = 0xc8a5d9c4, /* "HvRD" ebcdic */ .xDesc = 0xc8a5d9c4, /* "HvRD" ebcdic */
.xSize = sizeof(struct HvReleaseData), .xSize = sizeof(struct HvReleaseData),
.xVpdAreasPtrOffset = offsetof(struct naca_struct, xItVpdAreas), .xVpdAreasPtrOffset = offsetof(struct naca_struct, xItVpdAreas),
@ -186,7 +186,7 @@ struct ItLpNaca itLpNaca = {
}; };
/* May be filled in by the hypervisor so cannot end up in the BSS */ /* May be filled in by the hypervisor so cannot end up in the BSS */
struct ItIplParmsReal xItIplParmsReal __attribute__((__section__(".data"))); static struct ItIplParmsReal xItIplParmsReal __attribute__((__section__(".data")));
/* May be filled in by the hypervisor so cannot end up in the BSS */ /* May be filled in by the hypervisor so cannot end up in the BSS */
struct ItExtVpdPanel xItExtVpdPanel __attribute__((__section__(".data"))); struct ItExtVpdPanel xItExtVpdPanel __attribute__((__section__(".data")));
@ -209,14 +209,14 @@ u64 xMsVpd[3400] __attribute__((__section__(".data")));
/* Space for Recovery Log Buffer */ /* Space for Recovery Log Buffer */
/* May be filled in by the hypervisor so cannot end up in the BSS */ /* May be filled in by the hypervisor so cannot end up in the BSS */
u64 xRecoveryLogBuffer[32] __attribute__((__section__(".data"))); static u64 xRecoveryLogBuffer[32] __attribute__((__section__(".data")));
struct SpCommArea xSpCommArea = { static const struct SpCommArea xSpCommArea = {
.xDesc = 0xE2D7C3C2, .xDesc = 0xE2D7C3C2,
.xFormat = 1, .xFormat = 1,
}; };
static struct ItLpRegSave iseries_reg_save[] = { static const struct ItLpRegSave iseries_reg_save[] = {
[0 ... (NR_CPUS-1)] = { [0 ... (NR_CPUS-1)] = {
.xDesc = 0xd397d9e2, /* "LpRS" */ .xDesc = 0xd397d9e2, /* "LpRS" */
.xSize = sizeof(struct ItLpRegSave), .xSize = sizeof(struct ItLpRegSave),
@ -229,7 +229,7 @@ static struct ItLpRegSave iseries_reg_save[] = {
.reg_save_ptr = &iseries_reg_save[number], \ .reg_save_ptr = &iseries_reg_save[number], \
} }
struct alpaca alpaca[] = { const struct alpaca alpaca[] = {
ALPACA_INIT( 0), ALPACA_INIT( 0),
#if NR_CPUS > 1 #if NR_CPUS > 1
ALPACA_INIT( 1), ALPACA_INIT( 2), ALPACA_INIT( 3), ALPACA_INIT( 1), ALPACA_INIT( 2), ALPACA_INIT( 3),
@ -265,7 +265,7 @@ struct alpaca alpaca[] = {
* the Naca via the HvReleaseData area. The HvReleaseData has the * the Naca via the HvReleaseData area. The HvReleaseData has the
* offset into the Naca of the pointer to the ItVpdAreas. * offset into the Naca of the pointer to the ItVpdAreas.
*/ */
struct ItVpdAreas itVpdAreas = { const struct ItVpdAreas itVpdAreas = {
.xSlicDesc = 0xc9a3e5c1, /* "ItVA" */ .xSlicDesc = 0xc9a3e5c1, /* "ItVA" */
.xSlicSize = sizeof(struct ItVpdAreas), .xSlicSize = sizeof(struct ItVpdAreas),
.xSlicVpdEntries = ItVpdMaxEntries, /* # VPD array entries */ .xSlicVpdEntries = ItVpdMaxEntries, /* # VPD array entries */

View file

@ -14,7 +14,7 @@
struct naca_struct { struct naca_struct {
/* Kernel only data - undefined for user space */ /* Kernel only data - undefined for user space */
void *xItVpdAreas; /* VPD Data 0x00 */ const void *xItVpdAreas; /* VPD Data 0x00 */
void *xRamDisk; /* iSeries ramdisk 0x08 */ void *xRamDisk; /* iSeries ramdisk 0x08 */
u64 xRamDiskSize; /* In pages 0x10 */ u64 xRamDiskSize; /* In pages 0x10 */
}; };

View file

@ -58,6 +58,6 @@ struct HvReleaseData {
char xRsvd3[20]; /* Reserved x2C-x3F */ char xRsvd3[20]; /* Reserved x2C-x3F */
}; };
extern struct HvReleaseData hvReleaseData; extern const struct HvReleaseData hvReleaseData;
#endif /* _ISERIES_RELEASE_DATA_H */ #endif /* _ISERIES_RELEASE_DATA_H */

View file

@ -31,6 +31,4 @@ struct SpCommArea {
u8 xRsvd2[80]; // Reserved 030-07F u8 xRsvd2[80]; // Reserved 030-07F
}; };
extern struct SpCommArea xSpCommArea;
#endif /* _ISERIES_SPCOMM_AREA_H */ #endif /* _ISERIES_SPCOMM_AREA_H */

View file

@ -80,9 +80,9 @@ struct ItVpdAreas {
u32 xPlicDmaLens[ItDmaMaxEntries];// Array of DMA lengths 080-0A7 u32 xPlicDmaLens[ItDmaMaxEntries];// Array of DMA lengths 080-0A7
u32 xPlicDmaToks[ItDmaMaxEntries];// Array of DMA tokens 0A8-0CF u32 xPlicDmaToks[ItDmaMaxEntries];// Array of DMA tokens 0A8-0CF
u32 xSlicVpdLens[ItVpdMaxEntries];// Array of VPD lengths 0D0-12F u32 xSlicVpdLens[ItVpdMaxEntries];// Array of VPD lengths 0D0-12F
void *xSlicVpdAdrs[ItVpdMaxEntries];// Array of VPD buffers 130-1EF const void *xSlicVpdAdrs[ItVpdMaxEntries];// Array of VPD buffers 130-1EF
}; };
extern struct ItVpdAreas itVpdAreas; extern const struct ItVpdAreas itVpdAreas;
#endif /* _ISERIES_VPD_AREAS_H */ #endif /* _ISERIES_VPD_AREAS_H */

View file

@ -25,7 +25,7 @@
*/ */
struct alpaca { struct alpaca {
struct lppaca *lppaca_ptr; /* Pointer to LpPaca for PLIC */ struct lppaca *lppaca_ptr; /* Pointer to LpPaca for PLIC */
void *reg_save_ptr; /* Pointer to LpRegSave for PLIC */ const void *reg_save_ptr; /* Pointer to LpRegSave for PLIC */
}; };
#endif /* _ASM_POWERPC_ISERIES_ALPACA_H */ #endif /* _ASM_POWERPC_ISERIES_ALPACA_H */