Date: Wed, 1 Oct 2008 11:21:21 -0400 From: John Baldwin <jhb@freebsd.org> To: freebsd-current@freebsd.org Cc: Mike Tancsa <mike@sentex.net> Subject: Re: ichwd on ich9 attach failing ? Message-ID: <200810011121.21908.jhb@freebsd.org> In-Reply-To: <200810011405.m91E5ugg028685@lava.sentex.ca> References: <200810011405.m91E5ugg028685@lava.sentex.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 01 October 2008 10:05:48 am Mike Tancsa wrote: > Does anyone have a board with this chipset where ichwd attaches properly ? > > When I try to load the driver I get > > ichwd module loaded > isab0: found ICH9 or equivalent chipset: Intel ICH9R watchdog timer > ichwd0: <Intel ICH9R watchdog timer> on isa0 > isab0: found ICH9 or equivalent chipset: Intel ICH9R watchdog timer > ichwd0: ICH WDT present but disabled in BIOS or hardware > device_attach: ichwd0 attach returned 6 > ppc0: parallel port not found. > > the ppc0 error seems normal, as on other boards I see the same error > and things attach just fine > > It is enabled in the BIOS as the box will automatically reboot after > 5 min, since the watchdog is not set by the OS Hmm, looks like the test to clear a bit is failing. Maybe some quality time with the ICH9 datasheet (you should be able to find it on developer.intel.com) can help resolve this. Here is the relevant code: static __inline int ichwd_clear_noreboot(struct ichwd_softc *sc) { uint32_t status; int rc = 0; /* try to clear the NO_REBOOT bit */ if (sc->ich_version <= 5) { status = pci_read_config(sc->ich, ICH_GEN_STA, 1); status &= ~ICH_GEN_STA_NO_REBOOT; pci_write_config(sc->ich, ICH_GEN_STA, status, 1); status = pci_read_config(sc->ich, ICH_GEN_STA, 1); if (status & ICH_GEN_STA_NO_REBOOT) rc = EIO; } else { status = ichwd_read_gcs_4(sc, 0); status &= ~ICH_GCS_NO_REBOOT; ichwd_write_gcs_4(sc, 0, status); status = ichwd_read_gcs_4(sc, 0); if (status & ICH_GCS_NO_REBOOT) rc = EIO; } if (rc) device_printf(sc->device, "ICH WDT present but disabled in BIOS or hardware\n"); return (rc); } -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200810011121.21908.jhb>