]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
parisc: Document rules regarding checksum of HPMC handler
authorHelge Deller <deller@gmx.de>
Wed, 18 Apr 2018 13:46:41 +0000 (15:46 +0200)
committerHelge Deller <deller@gmx.de>
Wed, 18 Apr 2018 14:17:13 +0000 (16:17 +0200)
Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/kernel/traps.c

index 68e671a11987a6f2fe3de6823e8e3e1ed497334d..71d31274d782eecb7708b915d1ac15410e933c62 100644 (file)
@@ -837,6 +837,17 @@ void __init initialize_ivt(const void *iva)
        if (pdc_instr(&instr) == PDC_OK)
                ivap[0] = instr;
 
+       /*
+        * Rules for the checksum of the HPMC handler:
+        * 1. The IVA does not point to PDC/PDH space (ie: the OS has installed
+        *    its own IVA).
+        * 2. The word at IVA + 32 is nonzero.
+        * 3. If Length (IVA + 60) is not zero, then Length (IVA + 60) and
+        *    Address (IVA + 56) are word-aligned.
+        * 4. The checksum of the 8 words starting at IVA + 32 plus the sum of
+        *    the Length/4 words starting at Address is zero.
+        */
+
        /* Compute Checksum for HPMC handler */
        length = os_hpmc_size;
        ivap[7] = length;