Boot issue with pfSense 2.1.5 on PCEngine APU
Executive summary: Use Linux Minicom as a terminal and not Windows with Putty.
Environment:
- PCEngines APU1C, with apu140908.rom
- 16G mSATA SSD
- USB or SDCard install image
I had a lot of issues getting both the pfSense image and the pfSense install image to boot successfully. It would stop in single user mode with the message "/etc/rc terminated abnormally, going to single user mode". The first prerequisite step was to add the following during boot:
set hw.ata.atapi_dma="1" set hw.ata.ata_dma="1" set hw.ata.wc="1" set kern.cam.boot_delay="10000" boot
The following console was observed where the application was almost up, but then dropped to a single user console:
GEOM: da0s1: geometry does not match label (16h,63s != 255h,63s).
GEOM: da0s2: geometry does not match label (16h,63s != 255h,63s).
Trying to mount root from ufs:/dev/ufs/pfsense0
Configuring crash dumps...
Mounting filesystems...
Setting up memory disks... done.
___
___/ f \
/ p \___/ SSep 13 08:57:49 init: /bin/sh on /etc/rc terminated abnormally, going to single user mode
Enter full pathname of shell or RETURN for /bin/sh:
The solution was to move the Prolific serial port adapter from the Windows computer running putty as a serial console to a Linux box running MiniCom as a serial console. I haven't invested the specific reason why this helped - it could be as simple as the terminal emulation.
Links
Appendices
Boot configuration
So that the system boot up, extra loader settings are provided. Press '7' at the menu
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒Ŀ
▒ ▒
▒ ▒
▒ ▒
▒ Welcome to pfSense! ▒
▒ ▒ ______
▒ ▒ / \
▒ 1. Boot pfSense [default] ▒ _____/ f \
▒ 2. Boot pfSense with ACPI disabled ▒ / \ /
▒ 3. Boot pfSense using USB device ▒ / p \______/ Sense
▒ 4. Boot pfSense in Safe Mode ▒ \ / \
▒ 5. Boot pfSense in single user mode ▒ \_____/ \
▒ 6. Boot pfSense with verbose logging ▒ \ /
▒ 7. Escape to loader prompt ▒ \______/
▒ 8. Reboot ▒
▒ ▒
▒ ▒
▒ ▒
▒ Select option, [Enter] for default ▒
▒ or [Space] to pause timer 9 ▒
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
Type '?' for a list of commands, 'help' for more detailed help.
OK set hw.ata.atapi_dma="1"
OK set hw.ata.ata_dma="1"
OK set hw.ata.wc="1"
OK set kern.cam.boot_delay="10000"
OK boot
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2012 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.3-RELEASE-p16 #0: Mon Aug 25 08:27:11 EDT 2014
root@pf2_1_1_amd64.pfsense.org:/usr/obj.amd64/usr/pfSensesrc/src/sys/pfSense
_SMP.8 amd64
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: AMD G-T40E Processor (1000.01-MHz K8-class CPU)
Origin = "AuthenticAMD" Id = 0x500f20 Family = 14 Model = 2 Stepping = 0
Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C
MOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT>
Features2=0x802209<SSE3,MON,SSSE3,CX16,POPCNT>
AMD Features=0x2e500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM>
AMD Features2=0x35ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,IBS,SKINI
T,WDT>
TSC: P-state invariant

