On 2/1/07, Roman Kononov <[EMAIL PROTECTED]> wrote: > I have Sun Ultra40 workstation. Southbridge is nVidia CrushK8-04/nforce > 2200 (too many names, sounds like a criminal). > > 1) Linuxbios loads kernel A; kernel A loads kernel B. Everything works fine. > > 2) Then I push the reset button. > > 3) Linuxbios loads kernel A; kernel A loads kernel B. Kernel B complains > about wrong checksum of the mptable and crushes later. > > An investigation showed that in 3), short after kernel A (v2.6.19.2) sets > the Bus Master Enable bit of the nVidia's USB1 controller (pci_set_master()), > the mptable gets two bytes at physical address 0x80 damaged. > > Nothing is plugged to the USB ports. Other two Sun workstations had the same > behavior. This does not make sense to me unless the controller has a HW bug. > > I believe, this should better be fixed in the kernel USB driver. > > For now this patch offers a possibility for linuxbios to reset the USB > controller by setting HostControllerReset bit in HcCommandStatus Register. > It is enablead by using 'register "usb1_hc_reset"="1"' in 'chip > southbridge/nvidia/ck804' section of the mainboard's Config.lb. > > Signed-off-by: Roman Kononov <[EMAIL PROTECTED]>
Acked-by: Ronald G. Minnich <[EMAIL PROTECTED]> Committed revision 2546. -- linuxbios mailing list linuxbios@linuxbios.org http://www.openbios.org/mailman/listinfo/linuxbios