On Sun, 1 Jun 2014 23:46:38 +0100I was unable to find the source for Linux on BeBox. And in recent source
David Brownlee <abs%absd.org@localhost> wrote:
> > 1. Reboot. All blinken lights (left and right) are activated. Then the
> > system hangs, until I manually press the reset buttons.
>
> Linux ran on the BeBox at one point - I wonder if it would be easy to
> check what it did to reboot?
archives it is no longer present.
But I guess there is no way to reset the system in software. There is a
board register to assert /HRESET and /SRESET to CPU 1, but not to CPU 0.
Maybe I can reset as many hardware registers as possible and then jump
into the boot ROM's reset vector?
> > 6. mcclock(4) doesn't work correctly. The time after a cold-start isI have to replace the disk to start BeOS. Didn't have the time to do that.
> > wrong (e.g. "WARNING: preposterous TOD clock time"). Maybe I need a
> > new battery, but IIRC it worked under BeOS.
>
> It could be oddly parsed. If NetBSD writes something back to the TOD
> does BeOS see it as gibberish?
I inserted some debugging output into sys/dev/ic/mc146818.c and saw
the driver was reading a time like 20:17:87. Maybe there is a problem
with a mis-detected BCD mode (87 would be 0x57)?
But before investigating any further I should check the RTC under BeOS
again and replace the battery.
> > [...]
> > 7. X11/Xorg doesn't work yet. Cannot map I/O space. But the correct
> > driver (S3) is recognized:
> > [ 888.123] (WW) xf86EnableIO -1
> > [ 888.126] (II) xf86EnableIO: ffffffff
> > [ 888.128] (WW) Can't map IO space!
>Sounds sensible. Probaby macallan@ would bring up X11 in no time. ;)
> Wouldn't it be mem space rather than io space on a powerpc?
> > 9. Multiprocessor support. I compiled the GENERIC.MP kernel, but theTried that, but didn't help. Now I even got this error when loading
> > boot loader doesn't want to load it. A renamed GENERIC kernel works,
> > which is strange.
> > Boot: /dev/disk/scsi/000/0_0:netbsdmp
> > Loading /dev/disk/scsi/000/0_0:netbsdmp
> > illegal request, data = 0 0 0 0 24 0 0 cb 0 1 0 0 0 0 0 0 ff ff ff
> > ff 0 0 0 0
> > PHASE MSGIN: siop_clearfifo...
> > invalid status code 128
> > generic HBA error
> > siop_intr: I shouldn't be there !
>
> Could this be related to kernel size? Could you strip stuff out of
> GENERIC.MP until its smaller than GENERIC as a quick test?
a modified single-CPU kernel. :|
I noticed in siop.c that the siop_clearfifo() function was not yet
implemented. Probably this is the reason for all the following errors.
After implementing it, it looks like this:
DMA FIFO not empty!
illegal request, data = 0 0 0 0 24 0 0 cb 0 1 0 0 0 0 0 0 ff ff ff ff 0 0 0 0
illegal request, data = 0 0 0 0 24 0 0 ce 0 3 0 0 0 0 0 0 ff ff ff ff 0 0 0 0
open /dev/disk/scsi/000/0_0:netbsdtst: Input/ouput error
That's better (I'm printing "DMA FIFO not empty" inside siop_clearfifo)
although there is still a problem.
I have no idea about the other points yet. So no comment from me at this
time. I will continue my investigations whenever I find some time for it.