Date: Thu, 12 Feb 2009 09:23:27 -0500 From: John Baldwin <jhb@freebsd.org> To: Roman Divacky <rdivacky@freebsd.org> Cc: freebsd-current@freebsd.org Subject: Re: atrtc0: Warnings about mappings of I/O and interrupt Message-ID: <200902120923.28105.jhb@freebsd.org> In-Reply-To: <20081211221628.GA12494@freebsd.org> References: <20081120171325.GA53026@freebsd.org> <200812041745.14587.jhb@freebsd.org> <20081211221628.GA12494@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 11 December 2008 5:16:28 pm Roman Divacky wrote: > On Thu, Dec 04, 2008 at 05:45:14PM -0500, John Baldwin wrote: > > On Thursday 04 December 2008 05:04:38 pm Roman Divacky wrote: > > > On Thu, Dec 04, 2008 at 02:24:13PM -0500, John Baldwin wrote: > > > > On Thursday 20 November 2008 12:13:25 pm Roman Divacky wrote: > > > > > hi > > > > > > > > > > I upgraded from roughly 10 days old -CURRENT to this: > > > > > > > > > > FreeBSD witten 8.0-CURRENT FreeBSD 8.0-CURRENT #55: Wed Nov 19 23:23:49 > > CET > > > > 2008 > > > > > root@witten:/usr/obj/usr/src/sys/MYKERNEL i386 > > > > > > > > > > and I am getting this at boot: > > > > > > > > > > atrtc0: <AT Real Time Clock> at port 0x70 irq 8 on isa0 > > > > > atrtc0: Warning: Couldn't map I/O. > > > > > atrtc0: Warning: Couldn't map Interrupt. > > > > > > > > > > the booting itself works fine and I dont see any odd effects. > > > > > > > > The driver is just a stub anyway. Do you have any atrtc0 hints, and can > > you > > > > grab the output for the 'atrtc0' device from 'devinfo -r'? > > > > > > witten ~# grep atrtc /boot/device.hints > > > hint.atrtc.0.at="isa" > > > hint.atrtc.0.port="0x70" > > > hint.atrtc.0.irq="8" > > > > > > (but that's the default I believe) > > > > > > devinfo -r shows "empty" atrtc0 but: > > > > > > atrtc1 > > > Interrupt request lines: > > > 8 > > > I/O ports: > > > 0x70-0x71 > > > > > > any more info I can provide? > > > > Hmmmm, that should have worked fine in that atrtc1 should have taken over > > the 'atrtc0' hints. If you don't mind, can you add some debugging printfs to > > acpi_hint_device_unit() (maybe only do them if the 'name' parameter > > is "atrtc" to avoid clutter). > > with the attached patch I am getting the attached dmesg. > > do you want me to do some other thing? Can you get the dmesg output from this patch? --- //depot/user/jhb/acpipci/dev/acpica/acpi.c +++ /home/jhb/work/p4/acpipci/dev/acpica/acpi.c @@ -974,6 +974,9 @@ const char *s; long value; int line, matches, unit; + int debug; + + debug = (strcmp(name, "atrtc") == 0); /* * Iterate over all the hints for the devices with the specified @@ -984,11 +987,18 @@ if (resource_find_dev(&line, name, &unit, "at", NULL) != 0) break; + if (debug) + printf("Trying %s%d ...", name, unit); + /* Must have an "at" for acpi or isa. */ resource_string_value(name, unit, "at", &s); if (!(strcmp(s, "acpi0") == 0 || strcmp(s, "acpi") == 0 || strcmp(s, "isa0") == 0 || strcmp(s, "isa") == 0)) + { + if (debug) + printf(" bad bus %s\n", s); continue; + } /* * Check for matching resources. We must have at least one, @@ -1000,9 +1010,17 @@ matches = 0; if (resource_long_value(name, unit, "port", &value) == 0) { if (acpi_match_resource_hint(child, SYS_RES_IOPORT, value)) + { matches++; + if (debug) + printf(" port ok"); + } else + { + if (debug) + printf(" bad port\n"); continue; + } } if (resource_long_value(name, unit, "maddr", &value) == 0) { if (acpi_match_resource_hint(child, SYS_RES_MEMORY, value)) @@ -1012,9 +1030,17 @@ } if (resource_long_value(name, unit, "irq", &value) == 0) { if (acpi_match_resource_hint(child, SYS_RES_IRQ, value)) + { + if (debug) + printf(" irq ok"); matches++; + } else + { + if (debug) + printf(" bad irq\n"); continue; + } } if (resource_long_value(name, unit, "drq", &value) == 0) { if (acpi_match_resource_hint(child, SYS_RES_DRQ, value)) @@ -1023,6 +1049,8 @@ continue; } + if (debug) + printf(" matches %d\n", matches); if (matches > 0) { /* We have a winner! */ *unitp = unit; -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200902120923.28105.jhb>