Serious Progess Re: smbios.ko probes successfully if i disable acpi sysresource, fails if i do not

John Baldwin jhb at freebsd.org
Fri Nov 3 17:52:39 UTC 2006


On Friday 03 November 2006 00:15, John Utz wrote:
> 
> On Nov 2, 2006, at 8:39 AM, John Baldwin wrote:
> 
> > On Wednesday 01 November 2006 23:18, John Utz wrote:
> >>
> >> On Nov 1, 2006, at 7:51 AM, John Baldwin wrote:
> >>
> >>> On Tuesday 31 October 2006 18:47, john at utzweb.net wrote:
> >>>>
> >>>> So i actually do use pmap_mapdev to get a handle to the table, but
> >>>> i dont
> >>>> do that in smbios_attach, i do it in a function written to walk
> >>>> the table.
> >>>>
> >>>> but, as i alluded to previously, the original author used
> >>>> bus_alloc_resource() in smbios_attach() are you saying that i
> >>>> should use
> >>>> pmap_mapdev() in smbios_attach *instead* of bus_alloc_resource()?
> >>>
> >>> Yes.  Firmware tables are not resources (at least IMHO).
> >>
> >> ok then.
> >>
> >> so since pmap_mapdev() returns a void* what is the current blessed
> >> type that should be used for pmap_ memory handles in smbios_softc?
> >
> > Eh?  Any pointer will do. :)
> >
> 
> tnx! that is what i thought, but i'd rather ask.
> 
> if i do a  char* pfoo = pmap_mapdev(addr, size) in smbios_attach(),
> 
>   it stands to reason that i would want to do a pmap_unmapdev 
> (pfoo,size) in smbios_detach(), yes?
> 
> however, when i do this, it panics.
> 
> am i missing the point here?
> 
> tnx for all your help so far!

That should work fine, but you should cast the pointer to (vm_offset_t)
when passing it to pmap_unmapdev().

-- 
John Baldwin


More information about the freebsd-acpi mailing list