On Mon, 2001-11-05 at 17:44, Richard Hodges wrote: > On 5 Nov 2001, Pete Popov wrote: > > > On Mon, 2001-11-05 at 17:09, Richard Hodges wrote: > > > Would anyone be able to provide information on the arguments > > > to kernel_entry (in head.S)? > > > > > > The first two look pretty straightforward, argument count and > > > string vectors. I assume that argument zero is actually the > > > first argument, and not "vmlinux"? > > > > > > What are the third (ulong) and fourth (int *) arguments? I have > > > read head.S and searched for days trying to find this info :-( > > > > > > I thought PMON would be a decent reference, but run_target() only > > > seems to set $4 and $5, before calling _go(). > > > That's boot code specific. MIPS Tech's yamon passes: > > > > 0: number of arguments > > 1: pointer to first arg > > 2: pointer to environment variables > > 3: pointer to prom routines you can call > > Okay, I think I have it now. It looks like _only_ prom_init() is > interested in these arguments. > > 1. kernel_entry() gives them to init_arch(), > 2. init_arch gives them to prom_init(), > 3. prom_init() does whatever it wants (eg, builds arcs_cmdline) > 4. init_arch ends with a call to start_kernel(), and the original > arguments are effectively thrown away. > > Or put more simply, the kernel_entry arguments are only used by > prom_init(). Is this right? I believe that's correct. arch/mips/kernel/setup.c saves arcs_cmdline in command_line and that's the end of arcs_cmdline. Pete