提交 2960eb66 编写于 作者: S Stephen Rothwell

powerpc: Move LparData.c to powerpc platforms

Also rename it to lpardata.c
Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
上级 acdbec1b
obj-$(CONFIG_PPC_ISERIES) += hvcall.o hvlpconfig.o obj-$(CONFIG_PPC_ISERIES) += hvcall.o hvlpconfig.o lpardata.o
/* /*
* Copyright 2001 Mike Corrigan, IBM Corp * Copyright 2001 Mike Corrigan, IBM Corp
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
...@@ -29,8 +29,8 @@ ...@@ -29,8 +29,8 @@
#include <asm/iSeries/ItSpCommArea.h> #include <asm/iSeries/ItSpCommArea.h>
/* 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 = { struct HvReleaseData hvReleaseData = {
.xDesc = 0xc8a5d9c4, /* "HvRD" ebcdic */ .xDesc = 0xc8a5d9c4, /* "HvRD" ebcdic */
...@@ -79,7 +79,7 @@ extern void trap_0e_iSeries(void); ...@@ -79,7 +79,7 @@ extern void trap_0e_iSeries(void);
extern void performance_monitor_iSeries(void); extern void performance_monitor_iSeries(void);
extern void data_access_slb_iSeries(void); extern void data_access_slb_iSeries(void);
extern void instruction_access_slb_iSeries(void); extern void instruction_access_slb_iSeries(void);
struct ItLpNaca itLpNaca = { struct ItLpNaca itLpNaca = {
.xDesc = 0xd397d581, /* "LpNa" ebcdic */ .xDesc = 0xd397d581, /* "LpNa" ebcdic */
.xSize = 0x0400, /* size of ItLpNaca */ .xSize = 0x0400, /* size of ItLpNaca */
...@@ -106,7 +106,7 @@ struct ItLpNaca itLpNaca = { ...@@ -106,7 +106,7 @@ struct ItLpNaca itLpNaca = {
.xLoadAreaChunks = 0, /* chunks for load area */ .xLoadAreaChunks = 0, /* chunks for load area */
.xPaseSysCallCRMask = 0, /* PASE mask */ .xPaseSysCallCRMask = 0, /* PASE mask */
.xSlicSegmentTablePtr = 0, /* seg table */ .xSlicSegmentTablePtr = 0, /* seg table */
.xOldLpQueue = { 0 }, /* Old LP Queue */ .xOldLpQueue = { 0 }, /* Old LP Queue */
.xInterruptHdlr = { .xInterruptHdlr = {
(u64)system_reset_iSeries, /* 0x100 System Reset */ (u64)system_reset_iSeries, /* 0x100 System Reset */
(u64)machine_check_iSeries, /* 0x200 Machine Check */ (u64)machine_check_iSeries, /* 0x200 Machine Check */
...@@ -134,7 +134,7 @@ struct ItLpNaca itLpNaca = { ...@@ -134,7 +134,7 @@ struct ItLpNaca itLpNaca = {
EXPORT_SYMBOL(itLpNaca); EXPORT_SYMBOL(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"))); 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")));
...@@ -151,7 +151,7 @@ struct IoHriProcessorVpd xIoHriProcessorVpd[maxPhysicalProcessors] = { ...@@ -151,7 +151,7 @@ struct IoHriProcessorVpd xIoHriProcessorVpd[maxPhysicalProcessors] = {
.xPVR = 0x3600 .xPVR = 0x3600
} }
}; };
/* Space for Main Store Vpd 27,200 bytes */ /* Space for Main Store Vpd 27,200 bytes */
/* 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 xMsVpd[3400] __attribute__((__section__(".data"))); u64 xMsVpd[3400] __attribute__((__section__(".data")));
...@@ -197,7 +197,7 @@ struct ItVpdAreas itVpdAreas = { ...@@ -197,7 +197,7 @@ struct ItVpdAreas itVpdAreas = {
26992, /* 7 length of MS VPD */ 26992, /* 7 length of MS VPD */
0, /* 8 */ 0, /* 8 */
sizeof(struct ItLpNaca),/* 9 length of LP Naca */ sizeof(struct ItLpNaca),/* 9 length of LP Naca */
0, /* 10 */ 0, /* 10 */
256, /* 11 length of Recovery Log Buf */ 256, /* 11 length of Recovery Log Buf */
sizeof(struct SpCommArea), /* 12 length of SP Comm Area */ sizeof(struct SpCommArea), /* 12 length of SP Comm Area */
0,0,0, /* 13 - 15 */ 0,0,0, /* 13 - 15 */
...@@ -207,7 +207,7 @@ struct ItVpdAreas itVpdAreas = { ...@@ -207,7 +207,7 @@ struct ItVpdAreas itVpdAreas = {
0,0 /* 24 - 25 */ 0,0 /* 24 - 25 */
}, },
.xSlicVpdAdrs = { /* VPD addresses */ .xSlicVpdAdrs = { /* VPD addresses */
0,0,0, /* 0 - 2 */ 0,0,0, /* 0 - 2 */
&xItExtVpdPanel, /* 3 Extended VPD */ &xItExtVpdPanel, /* 3 Extended VPD */
&paca[0], /* 4 first Paca */ &paca[0], /* 4 first Paca */
0, /* 5 */ 0, /* 5 */
......
...@@ -22,8 +22,7 @@ pci-obj-$(CONFIG_PPC_MULTIPLATFORM) += pci_dn.o pci_direct_iommu.o ...@@ -22,8 +22,7 @@ pci-obj-$(CONFIG_PPC_MULTIPLATFORM) += pci_dn.o pci_direct_iommu.o
obj-$(CONFIG_PCI) += pci.o pci_iommu.o iomap.o $(pci-obj-y) obj-$(CONFIG_PCI) += pci.o pci_iommu.o iomap.o $(pci-obj-y)
obj-$(CONFIG_PPC_ISERIES) += LparData.o \ obj-$(CONFIG_PPC_ISERIES) += iSeries_setup.o ItLpQueue.o hvCall.o \
iSeries_setup.o ItLpQueue.o hvCall.o \
mf.o HvLpEvent.o iSeries_proc.o iSeries_htab.o \ mf.o HvLpEvent.o iSeries_proc.o iSeries_htab.o \
iSeries_iommu.o iSeries_iommu.o
......
...@@ -1253,7 +1253,7 @@ unrecov_slb: ...@@ -1253,7 +1253,7 @@ unrecov_slb:
* *
* On iSeries, the hypervisor must fill in at least one entry before * On iSeries, the hypervisor must fill in at least one entry before
* we get control (with relocate on). The address is give to the hv * we get control (with relocate on). The address is give to the hv
* as a page number (see xLparMap in LparData.c), so this must be at a * as a page number (see xLparMap in lpardata.c), so this must be at a
* fixed address (the linker can't compute (u64)&initial_stab >> * fixed address (the linker can't compute (u64)&initial_stab >>
* PAGE_SHIFT). * PAGE_SHIFT).
*/ */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册