Re: atrtc0: Warnings about mappings of I/O and interrupt

From: John Baldwin <jhb_at_freebsd.org>
Date: Fri, 13 Feb 2009 10:48:42 -0500
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_at_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?

So after thinking about this some more, the issue is that the atrtc device 
your BIOS provides via ACPI doesn't have an IRQ assigned, and that is why it 
doesn't match the hints.  If you remove the hints (or just remove the irq 
part of the hints), it should probe just fine as atrtc0.  I could possibly 
relax the restrictions for hint matching in the ACPI bus driver, but I think 
the risk of a false match is not worth fixing this particular case since 
atrtc doesn't create any /dev nodes with the wrong name, etc.

-- 
John Baldwin
Received on Fri Feb 13 2009 - 14:49:28 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:42 UTC