Hi,
> This is with the 1.3.58.1 kernel and MILO 0.26 + Ralf's patches + my
> deskstation patches + cleanup compile patches. I'm hard wiring the
> memory addresses as 0x800100000 for the start of memory (rather than
> _end due to the hole in memory) and 0x82000000 as the end address (32M
> total) in the early parts of init so that the tagged reads work right
> (MILO doesn't seem to be setting these correctly, but that could be my
> imagination).
The kernel makes the assumption that the memory from _end to end of
the physical memory is available for use. This is obviously wrong for
your machine.
> Anyway, I finy my self in need of a debugger for the linux-mips
> kernel.... I seem to recall that there was some work on this, but I'm
> not sure how far it got along. I've also noticed that hooks for the
> debugger seem to be enabled after the point I'm having problems at
> :-(.
The debugger support was written by Andy more than half a year ago. On
my 8mb machine linking with debugging enabled takes more than 5 minutes,
and it is still realativly slow on Andy's 32mb machine, so I never
used it. No idea if it still useable ...
> I'm getting to the following line in init_swap_cache and hanging:
>
> memset(swap_cache, 0, swap_cache_size * sizeof (unsigned long));
>
> I have no clue what swap_cache_size is, and printf doesn't work at
> this stage of the boot process (since the console driver isn't up
> yet). swap_cache_size should be 0x2000, which * 4 = 0x8000 which
Correct.
> should take very little time to finish on a 50MHz machine. If I
> comment out this line, then the next problem is somewhere after the
> init_modules line in the kernel, but before the kernel prints
> anything, so I'm rather keen on figuring out what the deal is (most
> likely it is in the console_init routine, but don't hold me to that).
>
> Ideas?
> If all else fails, I can hack together a tiny routine that prints a
> number to the right locations in memory...
Take a look at arch/mips/lib/console.c. It the console that I and Andy
were using before we built support into the normal console.c. Tiny,
incomplete and slow but has been extremly usefull.
Ralf
|