summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2018-01-01 21:32:44 +0100
committerHelge Deller <deller@gmx.de>2018-01-01 21:32:44 +0100
commit7821610840d482959282706b1e7570a3333a2c0d (patch)
tree66ea3770a87afeb175705ea88706a49d131500d7
parent0b29d0ca4721368c36e3ff51df106b109c554548 (diff)
downloadpalo-7821610840d482959282706b1e7570a3333a2c0d.tar.gz
Include palo version identifier in binary ipl code
Increase palo to version 2.00 and put version marker in the binary ipl file.
-rw-r--r--ipl/Makefile1
-rw-r--r--ipl/crt0.S9
-rw-r--r--lib/common.h9
-rw-r--r--palo.spec2
-rw-r--r--palo/palo.c2
5 files changed, 17 insertions, 6 deletions
diff --git a/ipl/Makefile b/ipl/Makefile
index 02f5a8b..913ec66 100644
--- a/ipl/Makefile
+++ b/ipl/Makefile
@@ -38,6 +38,7 @@ endif
# Source sharing with palo
VPATH=../lib:.
+AFLAGS = -I../lib
CFLAGS = -DIPL_LOADER -I. -I../lib -I../include -O2 -mdisable-fpregs -Wall -fno-delete-null-pointer-checks
LDFLAGS = -N --section-start .init=0x60000 -e '$$START$$'
diff --git a/ipl/crt0.S b/ipl/crt0.S
index 34dfc8c..a48b3f7 100644
--- a/ipl/crt0.S
+++ b/ipl/crt0.S
@@ -1,4 +1,6 @@
- .level 1.1
+ .level 1.1
+
+#include "common.h"
;!
;! Execution begins here.
@@ -24,6 +26,11 @@ _start:
; checksum when necessary, as on an ISO
; image where we have to preserve the
; integrity of this ELF executable file.
+ .align 16
+ .string PALOMAGIC ; Use strings command to get palo ipl version
+ .string PALOVERSION
+
+ .align 16
continue:
ssm 0,%r0
diff --git a/lib/common.h b/lib/common.h
index dbb8708..604c06d 100644
--- a/lib/common.h
+++ b/lib/common.h
@@ -8,6 +8,11 @@
* Copyright (C) Hewlett-Packard (Paul Bame) paul_bame@hp.com
*/
+#define PALOMAGIC "PALO"
+#define PALOVERSION "2.00"
+
+#ifndef __ASSEMBLY__
+
#define __KERNEL_STRICT_NAMES /* fixes build on SUSE 10 (kernel 2.6.1[2|3]) */
#if !(defined(__hpux__) || defined(__hpux))
@@ -67,8 +72,6 @@ void *pa_memcpy(void *dest, const void *src, unsigned n);
#define __swab16(x) bswap_16(x)
#endif /* __swab16 */
-#define PALOVERSION "1.99"
-
/* size of I/O block used in HP firmware */
#define FW_BLOCKSIZE 2048
@@ -85,7 +88,6 @@ void *pa_memcpy(void *dest, const void *src, unsigned n);
*
* kern_sz = 0 or rd_sz = 0 means no kern or ramdisk respectively.
*/
-#define PALOMAGIC "PALO"
#define PALOHDRVERSION 5
#define PFLAG_INSTALL 0x1
@@ -156,4 +158,5 @@ extern int load_partitions(int bootdev, struct diskpartition *mptab, int maxpart
extern void print_ptab(struct diskpartition *mptab, int maxparts);
extern void print_ptab_pretty(struct diskpartition *mptab, int maxparts);
+#endif /* __ASSEMBLY__ */
#endif /* __COMMON_H */
diff --git a/palo.spec b/palo.spec
index 2ee880c..3b7b739 100644
--- a/palo.spec
+++ b/palo.spec
@@ -1,5 +1,5 @@
Name: palo
-Version: 1.99
+Version: 2.00
Release: 1%{?dist}
Summary: PALO - PA-RISC Boot Loader
Packager: Helge Deller <deller@gmx.de>
diff --git a/palo/palo.c b/palo/palo.c
index 837c3cd..8de20c6 100644
--- a/palo/palo.c
+++ b/palo/palo.c
@@ -192,7 +192,7 @@ write_bootloader(int media, int bootloader,
error(13);
/* Is it really a boot loader? */
-#define BLWORD1 0xe8000002
+#define BLWORD1 0xe8000032 /* palo 2.00 and above */
if (BLWORD1 != __be32_to_cpu(*(unsigned *)blimage))
{
fprintf(stderr, "ERROR: first word of boot loader was 0x%08x,"