Subject: port-hpcarm/21397: IPAQ kernel does not compile on -current
To: None <gnats-bugs@gnats.netbsd.org>
From: Jachym Holecek <freza@psi.cz>
List: netbsd-bugs
Date: 04/30/2003 02:00:42
>Number: 21397
>Category: port-hpcarm
>Synopsis: IPAQ kernel does not compile on -current
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: port-hpcarm-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed Apr 30 00:02:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: Jachym Holecek
>Release: NetBSD-current as of Tue Apr 29 23:24:52 CEST 2003
>Organization:
Photon Systems Instruments
>Environment:
System: NetBSD gloom 1.6 NetBSD 1.6 (GLOOM) #4: Mon Jan 27 14:40:31 CET 2003 jh@gloom:/usr/src/sys/arch/i386/compile/GLOOM i386
Architecture: i386
Machine: i386
>Description:
Cross compiling (./build.sh -a arm -m hpcarm -T /data/current/tools/\
obj.hpcarm/tools.NetBSD-1.6-i386 kernel=IPAQ, tools are up to date) for
hpcarm on i386, I get the following:
[... snip ...]
/data/current/tools/obj.hpcarm/tools.NetBSD-1.6-i386/bin/arm--netbsdelf-gcc -ffreestanding -O2 -Wcomment -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-sign-compare -Wno-uninitialized -Dhpcarm -Darm32 -I. -I/data/current/sys/arch -I/data/current/sys -nostdinc -DSAEGPIO_BASE="0x49000000" -DLKM -DDIAGNOSTIC -DCONSPEED="0x4b00" -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /data/current/sys/arch/hpcarm/hpcarm/hpc_machdep.c
/data/current/sys/arch/hpcarm/hpcarm/hpc_machdep.c: In function `initarm':
/data/current/sys/arch/hpcarm/hpcarm/hpc_machdep.c:589: `PTE_PAGETABLE' undeclared (first use in this function)
/data/current/sys/arch/hpcarm/hpcarm/hpc_machdep.c:589: (Each undeclared identifier is reported only once
/data/current/sys/arch/hpcarm/hpcarm/hpc_machdep.c:589: for each function it appears in.)
*** Error code 1
Stop.
nbmake: stopped in /data/current/sys/arch/hpcarm/compile/IPAQ
ERROR: make all failed in /data/current/sys/arch/hpcarm/compile/IPAQ
*** BUILD ABORTED ***
[... snip ...]
I did not modify the kernel configuration file.
>How-To-Repeat:
Try to compile IPAQ kernel.
>Fix:
The following makes the kernel compile, I however am not able to test it
at the time being. I'm not sure whether PTE_CACHE is the right substitue
for PTE_PAGETABLE.
--- sys/arch/hpcarm/hpcarm/hpc_machdep.c Tue Apr 29 09:31:01 2003
+++ sys/arch/hpcarm/hpcarm/hpc_machdep.c.new Tue Apr 29 09:30:53 2003
@@ -586,7 +586,11 @@
#endif
/* Map page tables */
pmap_map_chunk(l1pagetable, KERNEL_BASE, KERNEL_BASE, pt_size,
+#ifdef ARM32_PMAP_NEW
VM_PROT_READ | VM_PROT_WRITE, PTE_PAGETABLE);
+#else
+ VM_PROT_READ | VM_PROT_WRITE, PTE_CACHE);
+#endif
/* Map the page table that maps the kernel pages */
pmap_map_entry(l1pagetable, kernel_ptpt.pv_va, kernel_ptpt.pv_pa,
>Release-Note:
>Audit-Trail:
>Unformatted: