Improving bus/resource API

John Baldwin jhb at FreeBSD.org
Tue Sep 20 13:39:38 PDT 2005


On Tuesday 20 September 2005 03:05 pm, M. Warner Losh wrote:
> In message: <76404F68-547C-42E2-A3A9-BD0AF2ECFADF at nlsystems.com>
>
>             Doug Rabson <dfr at nlsystems.com> writes:
> : > Maybe bus_read_{1,2,4}() rather than bsr_?  (Same with s/bsw_/
> : > bus_write_/).  I
> : > do like having the accessors take just a resource rather than a
> : > tag, handle
> : > pair.  Many drivers already hide this in wrapper macros already
> : > though.
>
> Are we going to extend this to all the other things that bus space can
> do?
> 	http://people.freebsd.org/~imp/bus_space.html
>
> While many of these are less common than the familiar
> bus_space_{read,write}, we should consider them as part of the updated
> API.
>
> bs vs bus_ vs ???.  These are really bus space + resource macros.  So
> maybe we want some other prefix...
>
> The whole point of the bsr vs bus_space_read was to make things much
> shorter.  bus_read/write does that, but to a more limited extent.
> Still, saving 6 characters per function call, plus one argument will
> help a lot.

I think maybe just do 's/bus_space_/bus_/' on the current names, which gives 
the simple bus_read/bus_write for the common case.  I think that along with 
reducing the first two args down to one that should make things shorter 
without making it cryptic.  (I think bsrm_4() would be cryptic compared to 
bus_read_multi_4().)

> : > For the dwiw (dwim? :-P) maybe since it takes an array, just make the
> : > 'resource' part plural, thus 'bus_alloc_resources()' and
> : > 'bus_release_resources()'?
> :
> : I like these names.
>
> That would settle the whole dwim vs dwiw arguement :-).  I like it.
>
> Oh, I found another bug: There are no man pages.  This is the only
> fatal problem.  There's still no man page, for example, for the d_*_t
> functions, nor the cdevsw in general (other than really crunch ones).

Now now, it's just a proposal at this stage. :)

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the freebsd-arch mailing list