aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2023-10-22 17:07:55 +0200
committerHelge Deller <deller@gmx.de>2023-10-31 08:26:22 +0100
commita5864658bfe6b2a6b91b2b4b79dd497a9ff94d00 (patch)
treef81633197bf68135088773b0e73f13dcd94217a1
parent806a5870ee7ec9f76e8d1c371ae856c9239b0aa8 (diff)
downloadseabios-hppa-a5864658bfe6b2a6b91b2b4b79dd497a9ff94d00.zip
seabios-hppa-a5864658bfe6b2a6b91b2b4b79dd497a9ff94d00.tar.gz
seabios-hppa-a5864658bfe6b2a6b91b2b4b79dd497a9ff94d00.tar.bz2
parisc: Fix return value of PDC_CACHE_RET_SPID space-id bits
If SR-hasing is disabled, we need to return zero. Linux checks this and aborts if it's not zero. Signed-off-by: Helge Deller <deller@gmx.de>
-rw-r--r--src/parisc/parisc.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/parisc/parisc.c b/src/parisc/parisc.c
index ab7ff62..6ec168f 100644
--- a/src/parisc/parisc.c
+++ b/src/parisc/parisc.c
@@ -1429,10 +1429,9 @@ static int pdc_cache(unsigned int *arg)
memcpy(result, machine_cache_info, sizeof(*machine_cache_info));
return PDC_OK;
- case PDC_CACHE_RET_SPID: /* returns space-ID bits */
+ case PDC_CACHE_RET_SPID: /* returns space-ID bits when sr-hasing is enabled */
memset(result, 0, 32 * sizeof(unsigned long));
- /* for 32- and 64-bit CPUs, we allow only 32 useable bits for SIDs */
- result[0] = 32;
+ result[0] = 0;
return PDC_OK;
}
dprintf(0, "\n\nSeaBIOS: Unimplemented PDC_CACHE function %d %x %x %x %x\n", ARG1, ARG2, ARG3, ARG4, ARG5);