On Thu, Jul 24, 2003 at 10:27:16AM -0400, David Kesselring wrote: > I am trying to determine what has to be included in our boot code to start > linux. I didn't think I needed to port yamon. What does yamon or pmon > provide for starting or debugging(gdb) linux? Does the processor need to > be in a specific state or context before jumping from the boot code to the > linux downloaded image? If someone can point me to a simple example, I > would greatly appreciate it. > This is a good question. I am listing what I can think of on top of my head. Some items might be missing: . cold initialize board . RAM should be ready . kernel binary is in place . cache is consistent. . any kernel command line args are set up (set prom_init() for the "protocol") . Normally you would enable cache, and jump to the KSEG0 kernel_entry. (I have seen exceptions, in which case you need to modified a little in kernel) . Obviously CPU is setup in kernel mode and a few configs are setup correctly (such as data path width, timing, etc). Interrupt should be turned off. All the rest bootloader work are negotiable between the linux kernel and bootloader. For example, if bootloader assigns PCI resources, then kenel can skip pci_auto. In other words, beyond the above minimum requirement, other bootloader work _can_ be done in Linux board setup routine. Jun