Subject: Serial boot on PB550c
To: None <port-mac68k@NetBSD.ORG>
From: Takashi HAMADA <pm6@apricot.etron.kanazawa-it.ac.jp>
List: port-mac68k
Date: 02/24/1996 15:28:28
Hi there.

I tried to boot NetBSD/mac68k on my PowerBook 550c (same as 540c except that
MPU is 68040).
I also have a SE/30 (20MB RAM, 1GB HDD, MacCon IIsi), NetBSD/mac68k is
running on this machine very fine. :)
To make a kernel for my PB 550c, I got current source code (02/17/96),
and modified that as follows:

 1. added some code to tell the video address in pmap_bootstrap.c
   (Mr. Erik Bertelsen did so)
 2. patched with Mr. John P. Wittkoski's ADB patch
 3. configured with a configuration file named as 'SPOT' which use
    the SCSI driver 'sbc0' (not 'ncrscsi0').

and then I made a kernel on my SE/30.
I copied that kernel to my PB 550c, then tried to boot on that machine with
serial console.
After displayed some message, I could loged in that machine as single user
mode.

Following is the log at that time:

--------------------------------------------------------------------------------

Whee! we ar the console!
[ preservin 93291 bytes of netbsd symbol table ]
Bootstrapping NetBSD/mac68k.
Faked range to byte 0xc00000.
Bootstrapping the pmap system.
Pmp bootstrapped.
Moving ROMBase from 0x40000000 to 0x1bf8000.
Video address 0x60000000 -> 0x8bf8000.
Copyright (c) 1982, 1986, 1989, 1991,1993
        The Regents of the University of California.  All rights reserved.

NetBSD 1.1A (550c) #9: Mon Feb 19 02:34:45 JST 1996
    hamada@apricot.etron.kanazawa-it.ac.jp:/usr/src/sys/arch/mac68k/compile/550c
Apple Macintosh PowerBook550C  (68040)
real mem = 12582912
vail mem = 9248768
using 179 buffers containing 733184 bytes of memory
mrg: kernel has no ROM vectors for this machine!
adb: no ROM ADB driver in this kernel for this machine
mainbus0 (root)
ite0 at mainbus0 (minimal console)
adb0 at mainbus0 (ADB event device)
ser0 at mainbus0
nubus0 at mainbus0
grf0 at nubus0: 640 x 480 monochrome Internal video (Internal video) dispay
ncrscsi0 at mainbus0 not configured
ncr96scsi0 at mainbus0 not configured
sbc0 at mainbus0
scsibus0 a sbc0
sbc0 targ 0 lun 0: <IBM, H2344-S4C, S690> SCSI1 0/drect fixed
sd0 at scsibus0: 328MB, 2262 cyl, 4 head, 74 sc, 512 bytes/sec
asc0 at mainus0 Apple sound chip.
fpu0 at mainbus (unknown type)
floppy0 at mainbus0 not configured
Changing root device to sd0a.
WARNING Battery clock has earlier time than UNIX fs.
Enter pathname of shell or RETURN for sh: sh
Terminal typ? vt100

# ls -l
total 7078
-rw-r--r--   2 root  wheel     629 Jan 18 23:31 .cshrc
-rw-r--r--   2 root  wheel     138 Jan 18 23:31 .profile
drwxr-xr--   2 root  wheel     512 Jan 18 18:11 altroot
drwxr-xr-x   2 root  wheel     512 Feb 21 09:16 bin
drwxr-xr-x   3 root  wheel     250 Feb 21 09:58 dev
drwxr-xr-x   8 root  wheel    1024 Feb 21 09:58 etc
drwxr-xr-x   2 root  wheel     512 Jan 18 18:11 home
drwxr-xr-x   2 root  wheel     512 Feb 21 09:16 kern
drwxr-xr-x   2 root  wheel    8192 Jan 16  1926 lost+found
drwxr-xr-x   2 root  wheel     512 Jan 18 18:11 mnt
-rw-rw-rw-   1 root  wheel  891651 Feb 21 11:18 netbd
drwxr-xr-x   2 root  wheel     512 Feb 21 09:16 proc
drwxr-xr-x   2 root  wheel     512 Feb 21 09:58 root
drwxr-xr-x   2 root  wheel     153 Feb 21 09:16 sbin
drwxr-xr-x   2 root  wheel     512 Jan 18 18:11 stand
drwxrwxrwt   2 root  wheel     512 Jan 18 18:11 tmp
drwxr-xr-x  14 root  wheel     512 Feb 21 09:16 usr
drwxr-xr-x  18 root  wheel     512 Feb 21 09:16 var
# fsck -p
/dev/rsd0a trap type 0, code = a5, v= c0a000
kernel: Bus error trap
pid = 8, pc = 0x0009db72, ps = 0x00002210 sfc = 0x00000001, dfc = 0x00000001
egisters:
             0        1        2        3       4        5       6        7
dreg 00002748 0000003f 004c4b40 00c0a000 00002000 00002204 00000000 00000017
areg: 00c08050 00c0a00 096cc001 00786800 00bfe000 0000200 00a96c8c ffffc83c

Kernel stack (00a96bec):
00a96be: 00c0a000  00002748  0000003f  004c440  00c0a000  0000000  00002204
 0000000 
00a96c0c: 00000017  00c08050  0c0a000  096cc001  00786800  00bfe000 
00002000  00a96c8c 
00a96c2c: ffffc83c  00000000  22100009  db727008  00a96c88  00a50025 
002500a5  00c0a000 
00a96c4c: 00c0a000  00000000  00c0a000  00000000  00c0a000  00000000 
0000008f  0000008e 
panic: Bus error
Stopped at: 1      _Debugger+0x6370   unlk    a6
db> ficle
syncing disks... done
NetBSD/mac68k does not trust iself to try and write to the pram on this system.

dumping to dev 401, offset 24584
dump sbc0: polled request aborting 0/0
sbc0: aborting, but phase=DATA_OUT (reset)
sbc0: reset SCSI bus for TI=0 LUN=0
s, 24490 used, 14869 free 45 frags, 1853 blocks, 0.1% fragmentation)
panic: ncr5380_scsi_cmd: polled request,abort failed
Stopped at      _Debuger+0x6:  unlk    a6
db> c

dumping to dev 401, offset 24584
dump device not ready


vm_fault(12500, 40000000, 1, 0) -> 1
  type 8, coe [mmu,,ssw]: 5e6
trap type 8, code = 5e6, v= 40000090
kernel: MMU fault trap
pid = 8, pc = x40000090, ps = 0x00002700, sfc = 0x00000001, dfc = 0x00000001
Registers:
             0        1        2        3        4        5        6        7
dreg: 00000808 00000001 00000104 00001013 00000008 00002204 0000000a 0014000
areg: 403ff000 40000090 00787d80 00786800 00787d80 00012af2 00a969d8 ffffc83c

Kernel stack (00a9693c):
00a9693c: 40000090  00000808  00000001  00000104  00001013  00000008 
00002204  0000000a 
00a9695c: 00124000  403ff000  40000090  00787d80  00786800  00787d80 
00012af2  00a969d8 
00a9697c: ffffc83c  00000000  27004000  00907008  00a969ac  05e60005 
00000005  40000090 
00a9699c: 40364000  40268000  00000007  00000000  00000104  00001013 
00000008  00002204 
panic: MMU fault
Stopped at      _Debugger+0x6:  unlk   a6
db> c

dumping to dev 401, offset 24584
dump device not ready

-------------------------------------------------------------------------------

With that kernel, I could used some commands (e.g. ls, more, ...) that do
not write the disk.

I'm not sure why the SCSI driver 'sbc0' works on that machine.
It is for NCR 5380 (comments in a source file told me so), not for NCR 53C96.
Anyway, it works.
Once I tried to boot with the SCSI driver 'ncrscsi0', after displayed the 
message "Changing root device to sd0a.", it hanged....

--
 8[%]8  Takashi HAMADA       Kanazawa Institute of Technology  //
  |#|                        System Design Engineering major   \\
  |#|   =====================================================  //
 (.= )  E-mail: hamada@next.etron.kanazawa-it.ac.jp            \\
 ( =:)          QFG03666@niftyserve.or.jp                      //