diff options
| -rw-r--r-- | arch/parisc/kernel/asm-offsets.c | 3 | ||||
| -rw-r--r-- | arch/parisc/kernel/firmware.c | 4 | ||||
| -rw-r--r-- | arch/parisc/kernel/real2.S | 12 | ||||
| -rw-r--r-- | include/asm-parisc/pdc.h | 3 |
4 files changed, 20 insertions, 2 deletions
diff --git a/arch/parisc/kernel/asm-offsets.c b/arch/parisc/kernel/asm-offsets.c index 3efc0b73e4ff..699cf8ef2118 100644 --- a/arch/parisc/kernel/asm-offsets.c +++ b/arch/parisc/kernel/asm-offsets.c | |||
| @@ -290,5 +290,8 @@ int main(void) | |||
| 290 | DEFINE(EXCDATA_IP, offsetof(struct exception_data, fault_ip)); | 290 | DEFINE(EXCDATA_IP, offsetof(struct exception_data, fault_ip)); |
| 291 | DEFINE(EXCDATA_SPACE, offsetof(struct exception_data, fault_space)); | 291 | DEFINE(EXCDATA_SPACE, offsetof(struct exception_data, fault_space)); |
| 292 | DEFINE(EXCDATA_ADDR, offsetof(struct exception_data, fault_addr)); | 292 | DEFINE(EXCDATA_ADDR, offsetof(struct exception_data, fault_addr)); |
| 293 | BLANK(); | ||
| 294 | DEFINE(ASM_PDC_RESULT_SIZE, NUM_PDC_RESULT * sizeof(unsigned long)); | ||
| 295 | BLANK(); | ||
| 293 | return 0; | 296 | return 0; |
| 294 | } | 297 | } |
diff --git a/arch/parisc/kernel/firmware.c b/arch/parisc/kernel/firmware.c index 7177a6cd1b7f..99a9e505edf9 100644 --- a/arch/parisc/kernel/firmware.c +++ b/arch/parisc/kernel/firmware.c | |||
| @@ -71,8 +71,8 @@ | |||
| 71 | #include <asm/processor.h> /* for boot_cpu_data */ | 71 | #include <asm/processor.h> /* for boot_cpu_data */ |
| 72 | 72 | ||
| 73 | static DEFINE_SPINLOCK(pdc_lock); | 73 | static DEFINE_SPINLOCK(pdc_lock); |
| 74 | static unsigned long pdc_result[32] __attribute__ ((aligned (8))); | 74 | extern unsigned long pdc_result[NUM_PDC_RESULT]; |
| 75 | static unsigned long pdc_result2[32] __attribute__ ((aligned (8))); | 75 | extern unsigned long pdc_result2[NUM_PDC_RESULT]; |
| 76 | 76 | ||
| 77 | #ifdef CONFIG_64BIT | 77 | #ifdef CONFIG_64BIT |
| 78 | #define WIDE_FIRMWARE 0x1 | 78 | #define WIDE_FIRMWARE 0x1 |
diff --git a/arch/parisc/kernel/real2.S b/arch/parisc/kernel/real2.S index 7a92695d95a6..5f3d3a1f9037 100644 --- a/arch/parisc/kernel/real2.S +++ b/arch/parisc/kernel/real2.S | |||
| @@ -8,12 +8,24 @@ | |||
| 8 | * | 8 | * |
| 9 | */ | 9 | */ |
| 10 | 10 | ||
| 11 | #include <asm/pdc.h> | ||
| 11 | #include <asm/psw.h> | 12 | #include <asm/psw.h> |
| 12 | #include <asm/assembly.h> | 13 | #include <asm/assembly.h> |
| 14 | #include <asm/asm-offsets.h> | ||
| 13 | 15 | ||
| 14 | #include <linux/linkage.h> | 16 | #include <linux/linkage.h> |
| 15 | 17 | ||
| 18 | |||
| 16 | .section .bss | 19 | .section .bss |
| 20 | |||
| 21 | .export pdc_result | ||
| 22 | .export pdc_result2 | ||
| 23 | .align 8 | ||
| 24 | pdc_result: | ||
| 25 | .block ASM_PDC_RESULT_SIZE | ||
| 26 | pdc_result2: | ||
| 27 | .block ASM_PDC_RESULT_SIZE | ||
| 28 | |||
| 17 | .export real_stack | 29 | .export real_stack |
| 18 | .export real32_stack | 30 | .export real32_stack |
| 19 | .export real64_stack | 31 | .export real64_stack |
diff --git a/include/asm-parisc/pdc.h b/include/asm-parisc/pdc.h index 9eaa794c3e4a..46b75f9cce51 100644 --- a/include/asm-parisc/pdc.h +++ b/include/asm-parisc/pdc.h | |||
| @@ -332,6 +332,9 @@ | |||
| 332 | #define BOOT_CONSOLE_SPA_OFFSET 0x3c4 | 332 | #define BOOT_CONSOLE_SPA_OFFSET 0x3c4 |
| 333 | #define BOOT_CONSOLE_PATH_OFFSET 0x3a8 | 333 | #define BOOT_CONSOLE_PATH_OFFSET 0x3a8 |
| 334 | 334 | ||
| 335 | /* size of the pdc_result buffer for firmware.c */ | ||
| 336 | #define NUM_PDC_RESULT 32 | ||
| 337 | |||
| 335 | #if !defined(__ASSEMBLY__) | 338 | #if !defined(__ASSEMBLY__) |
| 336 | #ifdef __KERNEL__ | 339 | #ifdef __KERNEL__ |
| 337 | 340 | ||
