Port-macppc archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: What does ofwboot.xcf know?



hauke%Espresso.Rhein-Neckar.DE@localhost wrote:

> That's more or less what I ended up with. The small problem: It doesn't
> work, a kernel on an lfs partition is not found.

Well, it seems to work for me.
---
Open Firmware, 2.0
To continue booting the MacOS type:
BYE<return>
To continue booting from the default boot device type:
BOOT<return>
 ok
0 > boot fd:ofwboot.xcf -a loading XCOFF
tsize=D700 dsize=234 bsize=29F0 entry=E00000 
SECTIONS:
.text    00E00000 00E00000 0000D700 000000E0
.data    00E0E000 00E0E000 00000234 0000D7E0
.bss     00E0E238 00E0E238 000029F0 00000000
loading .text, done..
loading .data, done..
clearing .bss, done..

>> NetBSD/macppc OpenFirmware Boot, Revision 1.10
>> (tsutsui@mirage, Mon Feb 25 01:14:40 JST 2008)
Boot: ata/ATA-Disk:0/netbsd
6205172+225600 [297184+281173]=0x6af760
 start=0x100000
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 4.0_BETA2 (GENERIC) #0: Sat May 12 12:08:48 PDT 2007
        
builds@wb26:/home/builds/ab/netbsd-4/macppc/200705120002Z-obj/home/builds/ab/netbsd-4/src/sys/arch/macppc/compile/GENERIC
total memory = 65536 KB
avail memory = 55576 KB
timecounter: Timecounters tick every 10.000 msec
no active packagefound OHare at 0xf3000000
Handling 32 interrupts
mainbus0 (root)
cpu0 at mainbus0: 603ev (Revision 2.1), ID 0 (primary)
cpu0: HID0 90c001<DOZE,DPM,ICE,DCE,NOPTI>, powersave: 1
cpu0: ohare L2 cache enabled
bandit0 at mainbus0
pci0 at bandit0 bus 0
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 11 function 0
pchb0: Apple Computer Bandit Host-PCI Bridge (rev. 0x02)
acardide0 at pci0 dev 13 function 0
acardide0: Acard ATP865-A Ultra133 IDE Controller (rev. 0x07)
acardide0: bus-master DMA support present
acardide0: primary channel wired to native-PCI mode
acardide0: using irq 23 for native-PCI interrupt
atabus0 at acardide0 channel 0
acardide0: secondary channel wired to native-PCI mode
atabus1 at acardide0 channel 1
re0 at pci0 dev 14 function 0: RealTek 8169S Single-chip Gigabit Ethernet
re0: interrupting at irq 25
re0: Ethernet address 00:0d:0b:4b:af:1b
rgephy0 at re0 phy 7: RTL8169S/8110S 1000BASE-T media interface, rev. 0
rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 
1000baseT-FDX, auto
obio0 at pci0 dev 16 function 0: addr 0xf3000000
mesh0 at obio0 offset 0x10000 irq 12: 50MHz, SCSI ID 7
scsibus0 at mesh0: 8 targets, 8 luns per target
zsc0 at obio0: irq 15,16
zstty0 at zsc0 channel 0 (console i/o)
zstty1 at zsc0 channel 1
awacs at obio0 offset 0x14000 not configured
swim3 at obio0 offset 0x15000 not configured
nvram0 at obio0 offset 0x60000
adb0 at obio0 offset 0x16000 irq 18: 1 targets
aed0 at adb0 addr 0: ADB Event device
akbd0 at adb0 addr 2: extended keyboard
wskbd0 at akbd0 mux 1
wdc0 at obio0 offset 0x20000 irq property not found; using 13: DMA transfer
atabus2 at wdc0 channel 0
timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
timecounter: Timecounter "mftb" frequency 10000000 Hz quality 100
Kernelized RAIDframe activated
scsibus0: waiting 2 seconds for devices to settle...
cd0 at scsibus0 target 3 lun 0: <MATSHITA, CD-ROM CR-506, 8S05> cdrom removable
wd0 at atabus2 drive 0: <ST380021A>
wd0: drive supports 16-sector PIO transfers, LBA addressing
wd0: 76319 MB, 155061 cyl, 16 head, 63 sec, 512 bytes/sect x 156301488 sectors
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
wd0(wdc0:0:0): using PIO mode 4, DMA mode 2 (using DMA)
boot device: wd0
root on wd0a dumps on wd0b
root file system type: lfs
/etc/rc.conf is not configured.  Multiuser boot aborted.
Enter pathname of shell or RETURN for /bin/sh: 
Terminal type? [unknown] 
Terminal type is unknown.
We recommend creating a non-root account and using su(1) for root access.
# mount
root_device on / type lfs (read-only, local)
# disklabel wd0
# /dev/rwd0c:
type: ESDI
disk: ST380021A       
label: fictitious
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 155061
total sectors: 156301488
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0           # microseconds
track-to-track seek: 0  # microseconds
drivedata: 0 

3 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 a:    614400         0     4.4LFS      0     0     0  # (Cyl.      0 -    609*)
 c: 156301488         0     unused      0     0        # (Cyl.      0 - 155060)
# 
---
(a loaded kernel is a bit old, but it doesn't matter here)

> The fact that there's no
> way of looking at the file systems in question, and no diaglostics, doesn't
> help either.

You can put printf into sys/lib/libsa/open.c:oopen()
or sys/lib/libsa/ufs.c:ufs_open() etc.
(and you could also see how each filesystem is tried)

>  static struct fs_ops file_system_hfs = FS_OPS(hfs);
>  static struct fs_ops file_system_ustarfs = FS_OPS(ustarfs);
>  static struct fs_ops file_system_cd9660 = FS_OPS(cd9660);
> +static struct fs_ops file_system_ffsv2 = FS_OPS(ffsv2);
> +static struct fs_ops file_system_lfsv1 = FS_OPS(lfsv1);
> +static struct fs_ops file_system_lfsv2 = FS_OPS(lfsv2);

If you'll add ffsv2, ufs (which is a compat name; see cvs log)
should also be renamed to ffsv1.
---
Izumi Tsutsui


Home | Main Index | Thread Index | Old Index